So the first time I ran my script, in the if statement that returns State.MINE didn't have "miningArea.contains(myPosition())" included in it. The script ran fine and returned State.MINE when the criteria was met, but once I added "miningArea.contains(myPosition())" if went to the default return case State.WAIT every time. This seems to be the case anytime I use AREA.contains(myPosition()) in an if/else statement. I also double checked to make sure my player was in the area "mineArea". I'm new to scripting so I might be missing something completely obvious so please point anything out.
privateState getState(){Area miningArea =newArea(3221,3150,3226,3143);Area bankArea =newArea(3205,3223,3212,3214);
bankArea.setPlane(2);/*
* if (I'm at the mine)
* if (My inventories empty and I'm not animating)
* Mine Rocks
*/if(!getInventory().isFull()&&!myPlayer().isAnimating()&& miningArea.contains(myPosition())){
log("mining. . .");returnState.MINE;/*
* if (I'm at the mine and my inventory is full)
* Run to the bank
*/}elseif(getInventory().isFull()&&!bankArea.contains(myPosition())){
log("running to bank. . .");returnState.RUN_BANK;/*
* if (I'm at the bank and my inventory is empty) Run to the mine
*/}elseif(bankArea.contains(myPosition())&& getInventory().isEmpty()){
log("running to mine. . .");returnState.RUN_MINE;/*
* if (I'm at the bank and my inventory is full)
* Bank Items
*/}elseif(bankArea.contains(myPosition())&& getInventory().isFull()){
log("banking. . .");returnState.BANK;/*
* none of the other conditions are satisfied
* Wait
*/}else{
log("waiting. . .");returnState.WAIT;}}
[SOLVED] Area() isn't working; Don't understand why getState() isn't working
in Scripting Help
Posted · Edited by forward prod
solved
So the first time I ran my script, in the if statement that returns State.MINE didn't have "miningArea.contains(myPosition())" included in it. The script ran fine and returned State.MINE when the criteria was met, but once I added "miningArea.contains(myPosition())" if went to the default return case State.WAIT every time. This seems to be the case anytime I use AREA.contains(myPosition()) in an if/else statement. I also double checked to make sure my player was in the area "mineArea". I'm new to scripting so I might be missing something completely obvious so please point anything out.