Difference between revisions of "Scripting Examples"
From theFarWilds
(New page: Example Scripts: // Fortified AI void configGame() { addAIPlayer("Evil Fish","Crypt Doctor",0); } void beforeStart() { Player aiPlayer=getAIPlayer(0); createEntity("Earthwo...) |
|||
(6 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
+ | [[Scripting]] | ||
Example Scripts: | Example Scripts: | ||
Line 17: | Line 18: | ||
− | // | + | // Specifying the Deck |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
void beforeStart() | void beforeStart() | ||
{ | { | ||
− | Player | + | Player player=getHumanPlayer(0); |
− | + | int ds=player.deckSize(); | |
− | + | for(int n=0; n<ds; n++) | |
− | + | { | |
− | + | player.removeDeckCard(0); | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
} | } | ||
− | + | player.addToDeck("Graveyard",0); | |
− | + | player.addToDeck("Red Imp",0); | |
− | + | player.addToDeck("Red Imp",0); | |
− | + | player.addToDeck("Black Plague",0); | |
− | + | player.addToDeck("Crypt Doctor",0); | |
− | + | player.addToDeck("Hypnotic Banshee",0); | |
+ | player.addToDeck("Nether Plasma",0); | ||
+ | player.addToDeck("Dank Pit",0); | ||
− | + | player.shuffleDeck(); | |
− | + | } | |
− | + | ||
− | + | ||
− | + | // Using entityCallback | |
− | + | // This removes the oldest building each round | |
− | + | void onNewRound() | |
− | + | { | |
+ | forEachEntity(); // loop through all the Entities | ||
+ | } | ||
− | + | bool entityCallback(Entity ent) | |
+ | { | ||
+ | if(ent.isType(2)) // Is it a building | ||
+ | { | ||
+ | ent.remove(); | ||
+ | return(false); // don't need to call entityCallback anymore | ||
+ | } | ||
+ | return(true); // we haven't found a building yet so keep checking | ||
} | } | ||
+ | |||
+ | |||
+ | // enchantEntity example | ||
+ | Player aiPlayer=getAIPlayer(0); | ||
+ | Entity entity1 = createEntity("Earthworks",6,6,aiPlayer); | ||
+ | enchantEntity(entity1, "Iron Gate", aiPlayer); |
Latest revision as of 23:30, 26 March 2010
Scripting Example Scripts:
// Fortified AI void configGame() { addAIPlayer("Evil Fish","Crypt Doctor",0); } void beforeStart() { Player aiPlayer=getAIPlayer(0); createEntity("Earthworks",6,6,aiPlayer); createEntity("Earthworks",10,10,aiPlayer); createEntity("Axe Captain",6,7,aiPlayer); createEntity("Attrition",-1,-1,aiPlayer); }
// Specifying the Deck void beforeStart() { Player player=getHumanPlayer(0); int ds=player.deckSize(); for(int n=0; n<ds; n++) { player.removeDeckCard(0); } player.addToDeck("Graveyard",0); player.addToDeck("Red Imp",0); player.addToDeck("Red Imp",0); player.addToDeck("Black Plague",0); player.addToDeck("Crypt Doctor",0); player.addToDeck("Hypnotic Banshee",0); player.addToDeck("Nether Plasma",0); player.addToDeck("Dank Pit",0); player.shuffleDeck(); }
// Using entityCallback // This removes the oldest building each round void onNewRound() { forEachEntity(); // loop through all the Entities } bool entityCallback(Entity ent) { if(ent.isType(2)) // Is it a building { ent.remove(); return(false); // don't need to call entityCallback anymore } return(true); // we haven't found a building yet so keep checking }
// enchantEntity example Player aiPlayer=getAIPlayer(0); Entity entity1 = createEntity("Earthworks",6,6,aiPlayer); enchantEntity(entity1, "Iron Gate", aiPlayer);