Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //--------------------------------
- //------- Cache Cache ------------
- //--------------------------------
- var moi = getLeek();
- var ennemi = getNearestEnemy();
- var MaCase = getCell();
- var SaCase = getCell(ennemi);
- var MaPortee = [];
- var SaPortee = [];
- var CasesSafe = [];
- var CasesDanger = [];
- MaPortee = getMesCases();
- SaPortee = getSesCases(ennemi);
- calculCaseSafe(CasesSafe, CasesDanger,ennemi,SaPortee,MaPortee);
- moveToward(ennemi);
- function getMesCases(){
- var MesCases = [];
- var cell = getCell();
- var x0 = getCellX(cell);
- var y0 = getCellY(cell);
- for(var x = -getMP() ; x <= getMP() ; x ++) {
- for(var y = -getMP() ; y <= getMP() ; y ++) {
- if(abs(x) + abs(y) <= getMP()) {
- cell = getCellFromXY(x+x0, y+y0);
- if(cell != null && inArray(getObstacles(), cell)==false) {
- push(MesCases, cell);
- mark(cell,COLOR_GREEN);
- }
- }
- }
- }
- debug("Operations mes cases "+getOperations());
- return MesCases;
- }
- //faire la meme chose pour l'ennemi
- function getSesCases(ennemi){
- var SesCases = [];
- var cell = getCell(ennemi);
- var x0 = getCellX(cell);
- var y0 = getCellY(cell);
- for(var x = -getMP(ennemi) ; x <= getMP(ennemi) ; x ++) {
- for(var y = -getMP(ennemi) ; y <= getMP(ennemi) ; y ++) {
- if(abs(x) + abs(y) <= getMP(ennemi)) {
- cell = getCellFromXY(x+x0, y+y0);
- if(cell != null && inArray(getObstacles(), cell)==false) {
- push(SesCases, cell);
- mark(cell,COLOR_RED);
- }
- }
- }
- }
- debug("Operations ses cases "+getOperations());
- return SesCases;
- }
- function calculCaseSafe(CasesSafe,CasesDanger,ennemi,SaPortee,MaPortee){
- for (var x = 0; x < count(MaPortee) ; x++) {
- for (var y = 0; y < count(SaPortee) ; y++) {
- if (lineOfSight(SaPortee[x], MaPortee[y])) {
- if (inArray(CasesDanger, MaPortee[y])) {
- }else{
- push(CasesDanger, MaPortee[y]);
- }
- }else{
- push(CasesSafe, MaPortee[y]);
- }
- }
- }
- debug("Operations cases safe et dangereuses "+getOperations());
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement