if (mode==1) {//総合メニュー if (pushKey==1) { if (cpos==0) modeChange=2; if (cpos==1) modeChange=3; if (cpos==2) shopEnd=true; } if (pushKey==2) shopEnd=true;
}
if (mode==2) { //買う モード if (pushKey==1) { ItemData bitem=siData[cpos]; Boolean notbuy=false; if (bitem.category==0) { notbuy=true; infoSet("何もない!",""); } if (bitem.price>gData.money) { notbuy=true; infoSet("お金が足りない!",""); } if (notbuy==false) { //int price=bitem.price; //作ったデータをアイテムリストに反映させる。 Boolean itemGet=false; int itemMax=199; //カテゴリー5のアイテムは1枠に複数所持できる。まずはそのチェック。 int sameItemNumber=9999; boolean same=false; if (bitem.category==5) { sameItemNumber=idSet.sameCheck(gData.siData,bitem.itemNumber); if (sameItemNumber<=itemMax) { gData.siData[sameItemNumber].quantity++; same=true; itemGet=true; } } //カテゴリー5ではないorすでに一枠に20以上持っていた場合、空欄チェックに入る。 if (same==false) { //まずはアイテムリストの空きチェック。そこに新しく手に入れたアイテムを挿入する。 int blankNumber=idSet.blankCheck(gData.siData); System.out.println("num="+blankNumber); if (blankNumber<=itemMax) { //gData.iData[blankNumber]=sellItemData[num]; idSet.dataCopy(gData.siData[blankNumber], bitem); gData.siData[blankNumber].quantity=1; itemGet=true; } }
if (itemGet==true) { if (gData.money>=bitem.price) gData.money-=bitem.price; infoSet("「"+bitem.name+"」","を買いました"); }
} } if (pushKey==2) modeChange=1;
}
if (mode==3) { //売る モード if (pushKey==1) { int num=cpos; if(gData.siData[num].category>=1) { int sellPrice=gData.siData[num].price/2; //消費アイテムは1枠に複数個持てるので、一個ずつ売ることになる。 //まとめ売りにしてもいいが、うっかり全部売りかねないので…。 //まとめ売りは別処理で作るべきかもしれん。 infoSet("「"+gData.siData[num].name+"」","を売りました"); if (gData.siData[num].category==4) { gData.siData[num].quantity--; if (gData.siData[num].quantity<=0) gData.siData[num].init(); } else { gData.siData[num].init(); } gData.money+=sellPrice;
} else { infoSet("何もないよ!",""); } } if (pushKey==2) modeChange=1;
}
infoSet関数は前回作ったもの。
public void infoSet(String str1,String str2) {