UNPKG

mdx-m3-viewer

Version:

A browser WebGL model viewer. Mainly focused on models of the games Warcraft 3 and Starcraft 2.

290 lines (236 loc) 7.47 kB
import JassPlayerColor from './types/playercolor'; import JassRace from './types/race'; import JassPlayerGameResult from './types/playergameresult'; import JassAllianceType from './types/alliancetype'; import JassVersion from './types/version'; import JassAttackType from './types/attacktype'; import JassDamageType from './types/damagetype'; import JassWeaponType from './types/weapontype'; import JassPathingType from './types/pathingtype'; import JassMouseButtonType from './types/mousebuttontype'; import JassRacePreference from './types/racepreference'; import JassMapControl from './types/mapcontrol'; import JassGameType from './types/gametype'; import JassMapFlag from './types/mapflag'; import JassPlacement from './types/placement'; import JassStartLocPrio from './types/startlocprio'; import JassMapDensity from './types/mapdensity'; import JassGameDifficulty from './types/gamedifficulty'; import JassGameSpeed from './types/gamespeed'; import JassPlayerSlotState from './types/playerslotstate'; import JassVolumeGroup from './types/volumegroup'; import JassIGameState from './types/igamestate'; import JassFGameState from './types/fgamestate'; import JassPlayerState from './types/playerstate'; import JassUnitState from './types/unitstate'; import JassAiDifficulty from './types/aidifficulty'; import JassPlayerScore from './types/playerscore'; import JassGameEvent from './types/gameevent'; import JassPlayerEvent from './types/playerevent'; import JassPlayerUnitEvent from './types/playerunitevent'; import JassUnitEvent from './types/unitevent'; import JassWidgetEvent from './types/widgetevent'; import JassDialogEvent from './types/dialogevent'; import JassLimitOp from './types/limitop'; import JassUnitType from './types/unittype'; import JassItemType from './types/itemtype'; import JassCameraField from './types/camerafield'; import JassBlendMode from './types/blendmode'; import JassRarityControl from './types/raritycontrol'; import JassTexMapFlags from './types/texmapflags'; import JassFogState from './types/fogstate'; import JassEffectType from './types/effecttype'; import JassSoundType from './types/soundtype'; /** * @param {LuaContext} C * @return {Object} */ export default function constantHandles(C) { let handles = { playerColors: {}, races: {}, playerGameResults: {}, allianceTypes: {}, versions: {}, attackTypes: {}, damageTypes: {}, weaponTypes: {}, pathingTypes: {}, mouseButtonTypes: {}, racePrefs: {}, mapControls: {}, gameTypes: {}, mapFlags: {}, placements: {}, startLocPrios: {}, mapDensities: {}, gameDifficulties: {}, gameSpeeds: {}, playerSlotStates: {}, volumeGroups: {}, gameStates: {}, playerStates: {}, unitStates: {}, aiDifficulties: {}, playerScores: {}, events: {}, limitOps: {}, unitTypes: {}, itemTypes: {}, cameraFields: {}, blendModes: {}, rarityControls: {}, texMapFlags: {}, fogStates: {}, effectTypes: {}, soundTypes: {}, }; for (let i = 0; i < 24; i++) { handles.playerColors[i] = new JassPlayerColor(i); } for (let i = 0; i < 8; i++) { handles.races[i] = new JassRace(i); } for (let i = 0; i < 4; i++) { handles.playerGameResults[i] = new JassPlayerGameResult(i); } for (let i = 0; i < 10; i++) { handles.allianceTypes[i] = new JassAllianceType(i); } for (let i = 0; i < 2; i++) { handles.versions[i] = new JassVersion(i); } for (let i = 0; i < 7; i++) { handles.attackTypes[i] = new JassAttackType(i); } for (let i = 0; i < 27; i++) { // Note: 1, 2, 3, 6, and 7 not exposed in common.j handles.damageTypes[i] = new JassDamageType(i); } for (let i = 0; i < 24; i++) { handles.weaponTypes[i] = new JassWeaponType(i); } for (let i = 0; i < 8; i++) { handles.pathingTypes[i] = new JassPathingType(i); } for (let i = 0; i < 4; i++) { handles.mouseButtonTypes[i] = new JassMouseButtonType(i); } for (let i = 0; i < 8; i++) { let p = Math.pow(2, i); handles.racePrefs[p] = new JassRacePreference(p); } for (let i = 0; i < 6; i++) { handles.mapControls[i] = new JassMapControl(i); } for (let i = 0; i < 8; i++) { let p = Math.pow(2, i); handles.gameTypes[p] = new JassGameType(p); } for (let i = 0; i < 20; i++) { let p = Math.pow(2, i); handles.mapFlags[p] = new JassMapFlag(p); } for (let i = 0; i < 4; i++) { handles.placements[i] = new JassPlacement(i); } for (let i = 0; i < 3; i++) { handles.startLocPrios[i] = new JassStartLocPrio(i); } for (let i = 0; i < 4; i++) { handles.mapDensities[i] = new JassMapDensity(i); } for (let i = 0; i < 4; i++) { handles.gameDifficulties[i] = new JassGameDifficulty(i); } for (let i = 0; i < 5; i++) { handles.gameSpeeds[i] = new JassGameSpeed(i); } for (let i = 0; i < 3; i++) { handles.playerSlotStates[i] = new JassPlayerSlotState(i); } for (let i = 0; i < 8; i++) { handles.volumeGroups[i] = new JassVolumeGroup(i); } for (let i = 0; i < 2; i++) { handles.gameStates[i] = new JassIGameState(i); } for (let i = 2; i < 3; i++) { handles.gameStates[i] = new JassFGameState(i); } for (let i = 0; i < 26; i++) { // Note: 17-24 not exposed in common.j handles.playerStates[i] = new JassPlayerState(i); } for (let i = 0; i < 4; i++) { handles.unitStates[i] = new JassUnitState(i); } for (let i = 0; i < 3; i++) { handles.aiDifficulties[i] = new JassAiDifficulty(i); } for (let i = 0; i < 25; i++) { handles.playerScores[i] = new JassPlayerScore(i); } for (let i = 0; i < 11; i++) { handles.events[i] = new JassGameEvent(i); } for (let i = 11; i < 18; i++) { handles.events[i] = new JassPlayerEvent(i); } for (let i = 18; i < 52; i++) { handles.events[i] = new JassPlayerUnitEvent(i); } for (let i = 52; i < 89; i++) { handles.events[i] = new JassUnitEvent(i); } for (let i = 89; i < 90; i++) { handles.events[i] = new JassWidgetEvent(i); } for (let i = 90; i < 92; i++) { handles.events[i] = new JassDialogEvent(i); } for (let i = 256; i < 260; i++) { handles.events[i] = new JassGameEvent(i); } for (let i = 261; i < 269; i++) { handles.events[i] = new JassPlayerEvent(i); } for (let i = 269; i < 278; i++) { handles.events[i] = new JassPlayerUnitEvent(i); } for (let i = 286; i < 295; i++) { handles.events[i] = new JassUnitEvent(i); } for (let i = 0; i < 6; i++) { handles.limitOps[i] = new JassLimitOp(i); } for (let i = 0; i < 27; i++) { handles.unitTypes[i] = new JassUnitType(i); } for (let i = 0; i < 9; i++) { handles.itemTypes[i] = new JassItemType(i); } for (let i = 0; i < 7; i++) { handles.cameraFields[i] = new JassCameraField(i); } for (let i = 0; i < 6; i++) { handles.blendModes[i] = new JassBlendMode(i); } for (let i = 0; i < 1; i++) { handles.rarityControls[i] = new JassRarityControl(i); } for (let i = 0; i < 4; i++) { handles.texMapFlags[i] = new JassTexMapFlags(i); } for (let i = 0; i < 3; i++) { let p = Math.pow(2, i); handles.fogStates[p] = new JassFogState(p); } for (let i = 0; i < 7; i++) { handles.effectTypes[i] = new JassEffectType(i); } for (let i = 0; i < 2; i++) { handles.soundTypes[i] = new JassSoundType(i); } return handles; }