{ "version": 3, "sources": ["../../../../sim/examples/battle-stream-example.ts"], "sourcesContent": ["/**\n * Battle Stream Example\n * Pokemon Showdown - http://pokemonshowdown.com/\n *\n * Example of how to create AIs battling against each other.\n * Run this using `node build && node .sim-dist/examples/battle-stream-example`.\n *\n * @license MIT\n * @author Guangcong Luo \n */\n\nimport {BattleStream, getPlayerStreams, Teams} from '..';\nimport {RandomPlayerAI} from '../tools/random-player-ai';\n\n/*********************************************************************\n * Run AI\n *********************************************************************/\n\nconst streams = getPlayerStreams(new BattleStream());\n\nconst spec = {\n\tformatid: \"gen7customgame\",\n};\nconst p1spec = {\n\tname: \"Bot 1\",\n\tteam: Teams.pack(Teams.generate('gen7randombattle')),\n};\nconst p2spec = {\n\tname: \"Bot 2\",\n\tteam: Teams.pack(Teams.generate('gen7randombattle')),\n};\n\nconst p1 = new RandomPlayerAI(streams.p1);\nconst p2 = new RandomPlayerAI(streams.p2);\n\nconsole.log(\"p1 is \" + p1.constructor.name);\nconsole.log(\"p2 is \" + p2.constructor.name);\n\nvoid p1.start();\nvoid p2.start();\n\nvoid (async () => {\n\tfor await (const chunk of streams.omniscient) {\n\t\tconsole.log(chunk);\n\t}\n})();\n\nvoid streams.omniscient.write(`>start ${JSON.stringify(spec)}\n>player p1 ${JSON.stringify(p1spec)}\n>player p2 ${JSON.stringify(p2spec)}`);\n"], "mappings": ";AAWA,eAAoD;AACpD,8BAA6B;AAZ7B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBA,MAAM,cAAU,2BAAiB,IAAI,sBAAa,CAAC;AAEnD,MAAM,OAAO;AAAA,EACZ,UAAU;AACX;AACA,MAAM,SAAS;AAAA,EACd,MAAM;AAAA,EACN,MAAM,eAAM,KAAK,eAAM,SAAS,kBAAkB,CAAC;AACpD;AACA,MAAM,SAAS;AAAA,EACd,MAAM;AAAA,EACN,MAAM,eAAM,KAAK,eAAM,SAAS,kBAAkB,CAAC;AACpD;AAEA,MAAM,KAAK,IAAI,uCAAe,QAAQ,EAAE;AACxC,MAAM,KAAK,IAAI,uCAAe,QAAQ,EAAE;AAExC,QAAQ,IAAI,WAAW,GAAG,YAAY,IAAI;AAC1C,QAAQ,IAAI,WAAW,GAAG,YAAY,IAAI;AAE1C,KAAK,GAAG,MAAM;AACd,KAAK,GAAG,MAAM;AAEd,MAAM,YAAY;AACjB,mBAAiB,SAAS,QAAQ,YAAY;AAC7C,YAAQ,IAAI,KAAK;AAAA,EAClB;AACD,GAAG;AAEH,KAAK,QAAQ,WAAW,MAAM,UAAU,KAAK,UAAU,IAAI;AAAA,aAC9C,KAAK,UAAU,MAAM;AAAA,aACrB,KAAK,UAAU,MAAM,GAAG;", "names": [] }