Ticket #3477: ticket3477_metacheat.diff
File ticket3477_metacheat.diff, 3.7 KB (added by , 9 years ago) |
---|
-
binaries/data/mods/public/simulation/data/cheats/metaCheat.json
1 { 2 "Name": "gift from the gods", 3 "Data": { 4 "Action": "metacheat" 5 } 6 } -
binaries/data/mods/public/simulation/helpers/Cheat.js
22 22 case "addresource": 23 23 // force input.text to be an array 24 24 input.text = [].concat(input.text); 25 for each ( vartype in input.text)25 for each (let type in input.text) 26 26 cmpPlayer.AddResource(type, input.parameter); 27 break;27 return; 28 28 case "revealmap": 29 29 var cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager); 30 30 cmpRangeManager.SetLosRevealAll(-1, true); 31 break;31 return; 32 32 case "maxpopulation": 33 33 cmpPlayer.SetPopulationBonuses(500); 34 break;34 return; 35 35 case "changemaxpopulation": 36 36 cmpPlayer.SetMaxPopulation(500); 37 break;37 return; 38 38 case "convertunit": 39 39 for (let ent of input.selected) 40 40 { … … 42 42 if (cmpOwnership) 43 43 cmpOwnership.SetOwner(cmpPlayer.GetPlayerID()); 44 44 } 45 break;45 return; 46 46 case "killunits": 47 47 for (let ent of input.selected) 48 48 { … … 52 52 else 53 53 Engine.DestroyEntity(ent); 54 54 } 55 break;55 return; 56 56 case "defeatplayer": 57 57 var playerEnt = cmpPlayerManager.GetPlayerByID(input.parameter); 58 58 if (playerEnt == INVALID_ENTITY) 59 59 return; 60 60 Engine.PostMessage(playerEnt, MT_PlayerDefeated, { "playerId": input.parameter } ); 61 break;61 return; 62 62 case "createunits": 63 63 if (!input.selected[0]) 64 64 { … … 74 74 } 75 75 for (let i = 0; i < input.parameter; ++i) 76 76 cmpProductionQueue.SpawnUnits(input.templates[i % input.templates.length], 1, null); 77 break;77 return; 78 78 case "fastactions": 79 79 cmpPlayer.SetCheatTimeMultiplier((cmpPlayer.GetCheatTimeMultiplier() == 1) ? 0.01 : 1); 80 break;80 return; 81 81 case "changespeed": 82 82 cmpPlayer.SetCheatTimeMultiplier(input.parameter); 83 break;83 return; 84 84 case "changephase": 85 85 var cmpTechnologyManager = Engine.QueryInterface(playerEnt, IID_TechnologyManager); 86 86 if (!cmpTechnologyManager) … … 103 103 // rewrite input and call function 104 104 input.action = "researchTechnology"; 105 105 Cheat(input); 106 break;106 return; 107 107 case "researchTechnology": 108 108 // check, if name of technology is given 109 109 if (input.parameter.length == 0) … … 166 166 // check, if technology is already researched 167 167 if (!cmpTechnologyManager.IsTechnologyResearched(techname)) 168 168 cmpTechnologyManager.ResearchTechnology(techname); 169 break; 169 return; 170 case "metacheat": 171 // resources 172 input.parameter = 100000; 173 var type = "food"; 174 cmpPlayer.AddResource(type, input.parameter); 175 type = "wood"; 176 cmpPlayer.AddResource(type, input.parameter); 177 type = "stone"; 178 cmpPlayer.AddResource(type, input.parameter); 179 type = "metal"; 180 cmpPlayer.AddResource(type, input.parameter); 181 182 // max population "the hive master" 183 input.action = "maxpopulation"; 184 Cheat(input); 185 186 // change max pupulation "TARDIS" 187 input.action = "changemaxpopulation"; 188 Cheat(input); 189 190 // fast actions "i am too busy" 191 input.action = "fastactions"; 192 Cheat(input); 193 194 // change phase "back to the future" * 2 195 input.action = "changephase"; 196 Cheat(input); 197 input.action = "changephase"; 198 Cheat(input); 199 return; 170 200 default: 171 201 warn("Cheat '" + input.action + "' is not implemented"); 172 break;202 return; 173 203 } 174 204 } 175 205