package game; import javax.microedition.lcdui.*; import com.mg.*; import com.engine.*; public class GameDisplay extends MGCanvas implements GameConfig { GameResource res = null; GameRuntime runtime = null; int[] upcolor = new int[]{ 0x2d5900, 0x90d900, 0x2d5900, 0xd9d998, 0xf5f504, 0xf5f504, 0x777777, // 0xcccccc, }; int[] lowercolor = new int[]{ 0x777777, 0xffffff, 0x777777, 0xffffff, 0x777777, 0xf5f504, 0xf5f504, 0xd9d998, 0x2d5900, 0x90d900, 0x2d5900 }; int[][] titlecolor = new int[][]{ {0x3276fc, 0x133780}, {0xfcf632, 0x80801a}, {0xfa2c19, 0x99291f}, {0xbce80e, 0x80801a}, {0xd128ff, 0x7d1899}, {0xffd452, 0xa24700}, {0x56b3d4, 0x346b80} }; int[] selectcolor = new int[]{ 0xbdd9fc, 0xfcfc7e, 0xfac1bb, 0xedfcb1, 0xf4ccff, 0xffe9a6, 0xb4e0f0 }; public final static int[][] PageImage = new int[NO_OF_STATES][]; public GameDisplay() { super(); initImages(); initImageArrays(); setImageFileList(new String[] {"data://res.dat"}); } public void drawMGMenuButton(Graphics g, int button, Object message, int x, int y, int anchor, boolean isselected) { } public void drawCanvas(Graphics g) { // System.out.println("debug000:"+res.isReady+"/"+isLoading); if (res != null && res.isReady && !isLoading) { // g.setFont(F_NORMAL); // g.setColor(0x000000); // g.setColor(0xffffff); // g.fillRect(0, 0, GAME_WIDTH, GAME_HEIGHT); try { switch (res.iState) { case STATE_LOGO_PAGE: drawLogoPage(g); break; case STATE_MENU_PAGE: drawMenuPage(g); break; case STATE_TITLE_PAGE: drawTitlePage(g); break; case STATE_PAUSE_PAGE: drawPausePage(g); break; case STATE_EXIT_ALERT: drawExitAlert(g); break; case STATE_INSTRUCTION_PAGE: case STATE_CREDIT_PAGE:; drawDialogPage(g); break; case STATE_OPTION_PAGE: drawOptionPage(g); break; case STATE_RANKING_PAGE: drawRankingPage(g); break; case STATE_GAME_PAGE: drawGamePage(g); break; case STATE_BUY_PAGE: drawBuyPage(g); break; // case STATE_ADJUST_PRICE: // drawAdjustPrice(g); // break; case STATE_STAFF_PAGE: drawStaffPage(g); break; case STATE_AD_PAGE: drawAdPage(g); break; case STATE_STATUS_PAGE: drawStatusPage(g); break; case STATE_STRATEGY_PAGE: drawStrategyPage(g); break; // case STATE_VIEW_MISSION: // drawViewMission(g); // break; case STATE_REPORT_PAGE: drawReportPage(g); break; case STATE_SUBMENU_PAGE: drawSubmenuPage(g); break; case STATE_SELECT_PARTNER: drawSelectPartner(g); break; case STATE_SELECT_LEVEL: drawSelectLevel(g); break; case STATE_MISSION_BRIEF: drawMissionBrief(g); break; case STATE_BUY_PHONE: drawBuyPhone(g); break; case STATE_BUY_FACILITY: drawBuyFacility(g); break; case STATE_STAFF_SALES: drawStaffSales(g); break; case STATE_STAFF_PROMOTER: drawStaffPromoter(g); break; case STATE_STATUS_SALE: drawStatusSale(g); break; case STATE_STATUS_STOCK: drawStatusStock(g); break; case STATE_STATUS_INFO: drawStatusInfo(g); break; case STATE_EVENT_PAGE: drawEventPage(g); break; case STATE_MANAGE_PAGE: drawManagePage(g); break; case STATE_RANKING_SALE: drawRankingSale(g); break; case STATE_PRESET_SOUND: drawPresetSound(g); break; } }catch (Exception e) { System.out.println("canvas error: "+e); // e.printStackTrace(); } } } public void drawPresetSound(Graphics g) { drawMovingBG(g); drawOutlinedString(g, "聲音設定", GAME_WIDTH/2, 60, Graphics.HCENTER|Graphics.TOP, 0x000000, 0x00ff00); drawBox(g, 15, 80, GAME_WIDTH-15*2, 70); int x = 35; int distance = 85; int y = 115; drawBox(g, x+res.bEffect*distance-4, y-5, 30, 30); g.setColor(0x000000); g.drawString("要啟動聲效嗎", GAME_WIDTH/2, 90, Graphics.HCENTER|Graphics.TOP); g.drawImage(images[IMAGE_SOUND_OFF], x, y, Graphics.LEFT|Graphics.TOP); g.drawImage(images[IMAGE_SOUND_ON], x+distance, y, Graphics.LEFT|Graphics.TOP); g.drawImage(images[IMAGE_TICK_BOX], 0, GAME_HEIGHT, Graphics.LEFT|Graphics.BOTTOM); g.drawImage(images[IMAGE_CANCEL_BOX], GAME_WIDTH, GAME_HEIGHT, Graphics.RIGHT|Graphics.BOTTOM); } public void drawRankingSale(Graphics g) { drawNoteBook(g, MANAGE_RANK); g.setColor(0x000000); drawOutlinedString(g, "熱賣手機", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP, 0x000000, 0xffffff); g.setColor(0xcccccc); int x = images[IMAGEARRAY_NOTEBOOK[MANAGE_RANK]].getWidth(); int width = GAME_WIDTH-x-images[IMAGE_NOTE_RIGHT].getWidth(); // g.drawRect(x, upcolor.length+20, width, 1); int xoffset = x+10; int yoffset = upcolor.length+42; int blockw = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth()-10; int blockh = 21; g.drawRect(xoffset+30, yoffset, 1, blockh*5); for (int i=0; i<5; i++) { g.setColor(0x8f7f4d); g.drawRect(xoffset, yoffset+i*blockh, blockw, blockh); g.setColor(0x000000); g.drawString((i+1)+".", xoffset+15, yoffset+i*blockh+5, Graphics.HCENTER|Graphics.TOP); if (res.itemid[i]>=0) { g.drawString(res.myStore.myItem.ItemName[res.itemid[i]], xoffset+70, yoffset+i*blockh+5, Graphics.HCENTER|Graphics.TOP); } } } public void drawNoteBook2(Graphics g, int colorindex, String title, String[] option) { // System.out.println("colorindex "+colorindex); drawNoteBook(g, colorindex); g.setColor(0x000000); drawOutlinedString(g, title, GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP, 0x000000, 0xffffff); // g.drawString(title, GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); int paperyoffset = upcolor.length+41; int paperydistance = 20+1; int xoffset = images[IMAGEARRAY_NOTEBOOK[colorindex]].getWidth(); int paperw = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); for (int i=0; i<7; i++) { // g.setColor(0xffffff); // g.fillRect(xoffset, paperyoffset+paperydistance*i, GAME_WIDTH-xoffset, 20); if (i=5) { popindex = 4; } g.drawString("人流", (line1x+line2x)/2, paperyoffset+paperydistance+3, Graphics.HCENTER|Graphics.TOP); for (int i=0; i<=popindex; i++) { g.drawImage(images[IMAGE_BTN_STAR_ON], line2x+5+12*i, paperyoffset+paperydistance+5, Graphics.LEFT|Graphics.TOP); // g.drawString(""+res.myStore.totalcustomer, (line2x+line3x)/2, paperyoffset+paperydistance+3, Graphics.HCENTER|Graphics.TOP); } delta = FirmConfig.SATISFACTION_MAX-FirmConfig.SATISFACTION_MIN; int satisindex = (res.myStore.satisfaction-FirmConfig.SATISFACTION_MIN)/(delta/5); // System.out.println(satisindex); if (satisindex>=5) { satisindex = 4; } g.drawString("滿意度", (line1x+line2x)/2, paperyoffset+paperydistance*2+3, Graphics.HCENTER|Graphics.TOP); for (int i=0; i<=satisindex; i++) { g.drawImage(images[IMAGE_BTN_STAR_ON], line2x+5+12*i, paperyoffset+paperydistance*2+5, Graphics.LEFT|Graphics.TOP); // g.drawString(""+res.myStore.totalcustomer, (line2x+line3x)/2, paperyoffset+paperydistance+3, Graphics.HCENTER|Graphics.TOP); } // g.drawString(""+res.myStore.satisfaction, (line2x+line3x)/2, paperyoffset+paperydistance*2+3, Graphics.HCENTER|Graphics.TOP); g.drawString("現金", (line1x+line2x)/2, paperyoffset+paperydistance*3+3, Graphics.HCENTER|Graphics.TOP); g.drawString(""+res.myStore.money, (line2x+line3x)/2, paperyoffset+paperydistance*3+3, Graphics.HCENTER|Graphics.TOP); g.drawString("目標", xoffset+20, paperyoffset+paperydistance*4+3, Graphics.LEFT|Graphics.TOP); for (int i=0; i=2 && i-2=0) { g.drawImage(images[IMAGE_ICON_EMPLOY], boxx+5, boxy+boxh/2+34+5, Graphics.LEFT|Graphics.TOP); } // g.drawString(""+res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_SALARY], // 105, boxy+boxh-2, Graphics.LEFT|Graphics.BOTTOM); drawNumber(g, res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_SALARY], 105, boxy+boxh-17, Graphics.LEFT|Graphics.TOP); if (!res.confirmstring.equals("")) { int confirmy = 110; int confirmh = 75; drawBox(g, boxx, confirmy-20, GAME_WIDTH-boxx*2, 30); drawBox(g, boxx, confirmy, GAME_WIDTH-boxx*2, confirmh); g.setColor(0x000000); g.drawString("現金: ", boxx+5, confirmy-15, Graphics.LEFT|Graphics.TOP); drawOutlinedString(g, res.myStore.money+"", boxx+50, confirmy-15, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); g.setColor(0x000000); drawMGDialog(g, res.confirmstring, boxx+5, confirmy+5, GAME_WIDTH-boxx*2-10, confirmh-10, false); // g.drawImage(images[IMAGE_TICK_BOX], boxx+3, confirmy+confirmh-5, Graphics.LEFT|Graphics.BOTTOM); // g.drawImage(images[IMAGE_CANCEL_BOX], GAME_WIDTH-boxx-3, confirmy+confirmh-5, Graphics.RIGHT|Graphics.BOTTOM); // if (!res.confirmstring.equals("NO MONEY")) { int wordx = GAME_WIDTH/2-50; int distance = 70; drawBox(g, wordx+distance*res.confirmindex, confirmy+confirmh-30, 30, 25); g.setColor(0x000000); g.drawString("是", wordx+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); g.drawString("否", wordx+distance+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); // } } // g.setColor(0x000000); // g.drawString("NAME: "+res.myStore.myStaff.getStaffName(res.itemid[res.menuindex]), 0, 20, Graphics.LEFT|Graphics.TOP); // // g.drawString("ABILITY: ", 0, 60, Graphics.LEFT|Graphics.TOP); // for (int i=0; i=0) { // g.drawString("HIRED", 0, 130, Graphics.LEFT|Graphics.TOP); // } // g.drawString("SALARY: "+res.myStore.myStaff.getStaffAttribute(res.itemid[res.menuindex], FirmConfig.STAFF_SALARY), // 0, 150, Graphics.LEFT|Graphics.TOP); } public void drawStaffSales(Graphics g) { drawNoteBook(g, MANAGE_STAFF); int xoffset = images[IMAGEARRAY_NOTEBOOK[MANAGE_STAFF]].getWidth(); int yoffset = upcolor.length+20; int width = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); int boxx = xoffset+8; int boxy = yoffset+10; int boxw = width-16; int boxh = 140; g.setColor(0x000000); drawOutlinedString(g, "員工管理", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP, 0x000000, 0xffffff); // g.drawString("員工管理", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); // g.setColor(0x8f7f4d); // g.drawRect(xoffset, yoffset, width, 1); // g.setColor(0xcccccc); g.drawRect(boxx+2, boxy+2, boxw, boxh); g.setColor(0xffffff); g.fillRect(boxx, boxy, boxw, boxh); g.setColor(0xccf303); g.fillRect(boxx, boxy, boxw, 23); g.fillRect(boxx+2, boxy+boxh/2, (boxw-4)/2, 34); g.setColor(0xcccccc); g.drawRect(boxx, boxy, boxw, boxh); g.drawRect(boxx, boxy, boxw, 23); g.drawRect(boxx+2, boxy+boxh/2, boxw-4, 34); g.drawRect(boxx+2, boxy+boxh/2+34/2, boxw-4, 1); g.drawRect(boxx+boxw/2, boxy+boxh/2, 1, 34); g.drawImage(images[IMAGE_PLASTIC], xoffset, yoffset+3, Graphics.LEFT|Graphics.TOP); drawBox(g, boxx+3, boxy+25, 44, 44); g.drawImage(images[IMAGEARRAY_STAFF[res.itemid[res.menuindex]]], boxx+3+22, boxy+25+22, Graphics.HCENTER|Graphics.VCENTER); g.setColor(0x000000); g.drawString("履歷表", GAME_WIDTH/2, boxy+3, Graphics.HCENTER|Graphics.TOP); g.drawString((res.menuindex+1)+"/"+res.itemid.length, GAME_WIDTH/2+35, boxy+3, Graphics.LEFT|Graphics.TOP); g.drawString(res.myStore.myStaff.StaffName[res.itemid[res.menuindex]], 110, boxy+25, Graphics.HCENTER|Graphics.TOP); g.drawString("售貨員", 110, boxy+25+20, Graphics.HCENTER|Graphics.TOP); g.drawString("銷售能力:", boxx+2, boxy+boxh/2, Graphics.LEFT|Graphics.TOP); int delta = FirmConfig.ABILITY_MAX-FirmConfig.ABILITY_MIN; int index = (res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_ABILITY]-FirmConfig.ABILITY_MIN)/(delta/5); if (index>=5) { index = 4; } for (int i=0; i<5; i++) { if (i<=index) { g.drawImage(images[IMAGE_BTN_STAR_ON], 92+images[IMAGE_BTN_STAR_ON].getWidth()*i, boxy+boxh/2+5, Graphics.LEFT|Graphics.TOP); } else { g.drawImage(images[IMAGE_BTN_STAR_OFF], 92+images[IMAGE_BTN_STAR_OFF].getWidth()*i, boxy+boxh/2+5, Graphics.LEFT|Graphics.TOP); } } // g.drawString(""+res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_ABILITY], // 92, boxy+boxh/2, Graphics.LEFT|Graphics.TOP); g.drawString("使用語言:", boxx+2, boxy+boxh/2+34/2, Graphics.LEFT|Graphics.TOP); for (int i=0; i=0) { g.drawImage(images[IMAGE_ICON_EMPLOY], boxx+5, boxy+boxh/2+34+5, Graphics.LEFT|Graphics.TOP); } drawNumber(g, res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_SALARY], 105, boxy+boxh-17, Graphics.LEFT|Graphics.TOP); // g.drawString(""+res.myStore.myStaff.StaffAttribute[res.itemid[res.menuindex]][FirmConfig.STAFF_SALARY], // 105, boxy+boxh-2, Graphics.LEFT|Graphics.BOTTOM); if (!res.confirmstring.equals("")) { int confirmy = 110; int confirmh = 75; drawBox(g, boxx, confirmy-20, GAME_WIDTH-boxx*2, 30); drawBox(g, boxx, confirmy, GAME_WIDTH-boxx*2, confirmh); g.setColor(0x000000); g.drawString("現金: ", boxx+5, confirmy-15, Graphics.LEFT|Graphics.TOP); drawOutlinedString(g, res.myStore.money+"", boxx+50, confirmy-15, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); g.setColor(0x000000); drawMGDialog(g, res.confirmstring, boxx+5, confirmy+5, GAME_WIDTH-boxx*2-10, confirmh-10, false); // g.drawImage(images[IMAGE_TICK_BOX], boxx+3, confirmy+confirmh-5, Graphics.LEFT|Graphics.BOTTOM); // g.drawImage(images[IMAGE_CANCEL_BOX], GAME_WIDTH-boxx-3, confirmy+confirmh-5, Graphics.RIGHT|Graphics.BOTTOM); // if (!res.confirmstring.equals("NO MONEY")) { int wordx = GAME_WIDTH/2-50; int distance = 70; drawBox(g, wordx+distance*res.confirmindex, confirmy+confirmh-30, 30, 25); g.setColor(0x000000); g.drawString("是", wordx+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); g.drawString("否", wordx+distance+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); // } } // g.setColor(0x000000); // g.drawString("NAME: "+res.myStore.myStaff.getStaffName(res.itemid[res.menuindex]), 0, 20, Graphics.LEFT|Graphics.TOP); // g.drawString("ABILITY: "+res.myStore.myStaff.getStaffAttribute(res.itemid[res.menuindex], FirmConfig.STAFF_ABILITY), // 0, 40, Graphics.LEFT|Graphics.TOP); // g.drawString("LANGUAGE: ", 0, 60, Graphics.LEFT|Graphics.TOP); // for (int i=0; i=0) { // g.drawString("HIRED", 0, 130, Graphics.LEFT|Graphics.TOP); // } // g.drawString("SALARY: "+res.myStore.myStaff.getStaffAttribute(res.itemid[res.menuindex], FirmConfig.STAFF_SALARY), // 0, 150, Graphics.LEFT|Graphics.TOP); } public void drawBuyFacility(Graphics g) { drawNoteBook(g, MANAGE_BUY); int xoffset = images[IMAGEARRAY_NOTEBOOK[MANAGE_BUY]].getWidth(); int width = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); g.setColor(0x000000); drawOutlinedString(g, "購入店內設備", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP, 0x000000, 0xffffff); // g.drawString("購買店內用品", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); g.setColor(0xcccccc); // g.drawRect(xoffset, upcolor.length+20, width, 1); g.drawRect(xoffset, upcolor.length+20+97, width, 1); int phonenamey = upcolor.length+20+10; int ydistance = 18; for (int i=0; i<3; i++) { if (res.menuindex<3) { if (i=res.itemid2[i].length-1) { g.drawString(res.myStore.myItem.ItemName[res.itemid2[i][res.itemid2[i].length-1]], xoffset+width, phonenamey+ydistance*i, Graphics.RIGHT|Graphics.TOP); } else { g.drawString(res.myStore.myItem.ItemName[res.itemid2[i][res.itemindex[i]]], xoffset+width, phonenamey+ydistance*i, Graphics.RIGHT|Graphics.TOP); } // System.out.println("bbbbbbbbbbbbbbbbbbbb"); // if (res.facilitylevel[i]==res.facilitynext[i]) { // g.drawImage(images[IMAGE_BTN_STAR_ON], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } else { // g.drawImage(images[IMAGE_BTN_STAR_OFF], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } if (res.itemindex[i]==res.facilitylevel[i]) { g.drawImage(images[IMAGE_BTN_STAR_ON], xoffset+30, phonenamey+ydistance*i, Graphics.LEFT|Graphics.TOP); } else { for (int j=0; j0) { g.drawImage(images[IMAGE_BTN_ON], xoffset+30+8*j, phonenamey+ydistance*i+3, Graphics.RIGHT|Graphics.TOP); } else { g.drawImage(images[IMAGE_BTN_OFF], xoffset+30+8*j, phonenamey+ydistance*i+3, Graphics.RIGHT|Graphics.TOP); } } // for (int j=0; j=res.itemid2[res.menuindex-2+i].length-1) { g.drawString(res.myStore.myItem.ItemName[res.itemid2[res.menuindex-2+i][res.itemid2[res.menuindex-2+i].length-1]], xoffset+width, phonenamey+ydistance*i, Graphics.RIGHT|Graphics.TOP); } else { g.drawString(res.myStore.myItem.ItemName[res.itemid2[res.menuindex-2+i][res.itemindex[res.menuindex-2+i]]], xoffset+width, phonenamey+ydistance*i, Graphics.RIGHT|Graphics.TOP); } // System.out.println("bbbbbbbbbbbbbbbbbbbb"); // if (res.facilitylevel[i]==res.facilitynext[i]) { // g.drawImage(images[IMAGE_BTN_STAR_ON], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } else { // g.drawImage(images[IMAGE_BTN_STAR_OFF], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } if (res.itemindex[res.menuindex-2+i]==res.facilitylevel[res.menuindex-2+i]) { g.drawImage(images[IMAGE_BTN_STAR_ON], xoffset+30, phonenamey+ydistance*i, Graphics.LEFT|Graphics.TOP); } else { for (int j=0; j0) { g.drawImage(images[IMAGE_BTN_ON], xoffset+30+8*j, phonenamey+ydistance*i+3, Graphics.RIGHT|Graphics.TOP); } else { g.drawImage(images[IMAGE_BTN_OFF], xoffset+30+8*j, phonenamey+ydistance*i+3, Graphics.RIGHT|Graphics.TOP); } } } // g.drawString(res.myStore.myItem.ItemName[res.itemid[res.menuindex-2+i]], xoffset+width, // phonenamey+ydistance*i, Graphics.RIGHT|Graphics.TOP); // if (res.facilitylevel[res.menuindex-2+i]==res.facilitynext[res.menuindex-2+i]) { // g.drawImage(images[IMAGE_BTN_STAR_ON], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } else { // g.drawImage(images[IMAGE_BTN_STAR_OFF], xoffset+15, phonenamey+ydistance*i, // Graphics.RIGHT|Graphics.TOP); // } // // for (int j=0; j=res.itemid2[res.menuindex].length-1) { drawOutlinedString(g, ""+res.myStore.myItem.ItemAttribute[res.itemid2[res.menuindex][res.itemid2[res.menuindex].length-1]][FirmConfig.ITEM_INPRICE], xoffset+43, upcolor.length+20+92+18*3, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); } else { drawOutlinedString(g, ""+res.myStore.myItem.ItemAttribute[res.itemid2[res.menuindex][res.itemindex[res.menuindex]]][FirmConfig.ITEM_INPRICE], xoffset+43, upcolor.length+20+92+18*3, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); } if (!res.confirmstring.equals("")) { int confirmy = 110; int confirmx = 20; int confirmh = 75; drawBox(g, confirmx, confirmy, GAME_WIDTH-confirmx*2, confirmh); g.setColor(0x000000); drawMGDialog(g, res.confirmstring, confirmx+5, confirmy+5, GAME_WIDTH-confirmx*2-10, confirmh-10, false); if (!res.confirmstring.equals("金錢不足!")) { int wordx = GAME_WIDTH/2-50; int distance = 70; drawBox(g, wordx+distance*res.confirmindex, confirmy+confirmh-35, 30, 30); g.setColor(0x000000); g.drawString("是", wordx+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); g.drawString("否", wordx+distance+8, confirmy+confirmh-10, Graphics.LEFT|Graphics.BOTTOM); } // if (res.confirmindex==0) { // } // g.drawImage(images[IMAGE_TICK_BOX], boxx+3, confirmy+confirmh-5, Graphics.LEFT|Graphics.BOTTOM); // g.drawImage(images[IMAGE_CANCEL_BOX], GAME_WIDTH-boxx-3, confirmy+confirmh-5, Graphics.RIGHT|Graphics.BOTTOM); } // switch(res.myStore.myItem.ItemAttribute[res.itemid[res.menuindex]][FirmConfig.ITEM_TYPE]) { // case ITEMTYPE_PC: // g.drawImage(images[IMAGEARRAY_PC[res.facilitynext[res.menuindex]]], xoffset+20, upcolor.length+40+92, // Graphics.HCENTER|Graphics.VCENTER); // break; // case ITEMTYPE_LAMP: // g.drawImage(images[IMAGEARRAY_LAMP[res.facilitynext[res.menuindex]]], xoffset+20, upcolor.length+40+92, // Graphics.HCENTER|Graphics.VCENTER); // break; // case ITEMTYPE_TV: // g.drawImage(images[IMAGEARRAY_TV[res.facilitynext[res.menuindex]]], xoffset+20, upcolor.length+40+92, // Graphics.HCENTER|Graphics.VCENTER); // break; // case ITEMTYPE_POSTER: // g.drawImage(images[IMAGEARRAY_POSTER[res.facilitynext[res.menuindex]]], xoffset+20, upcolor.length+40+92, // Graphics.HCENTER|Graphics.VCENTER); // break; // case ITEMTYPE_SHELF: // g.drawImage(images[IMAGEARRAY_SHELF[res.facilitynext[res.menuindex]]], xoffset+20, upcolor.length+40+92, // Graphics.HCENTER|Graphics.VCENTER); // break; // } // for (int i=0; i=10; i=i/10) { if ((number/i)%10>0 || mustdraw) { mustdraw = true; drawClipImage(g, images[IMAGE_NUMBER], xoffset, y, width*((number/i)%10), 0, width, height, Graphics.LEFT|Graphics.TOP); xoffset+=width; } } drawClipImage(g, images[IMAGE_NUMBER], xoffset, y, width*(number%10), 0, width, height, Graphics.LEFT|Graphics.TOP); // if (number/1000>0) { // drawClipImage(g, images[IMAGE_NUMBER], x, y, width*(number/10000), 0, width, height, Graphics.LEFT|Graphics.TOP); // xoffset+=width; // } } else { int xoffset = x-6*width; // xoffset-=width; boolean mustdraw = false; for (int i=1000000; i>=10; i=i/10) { // System.out.println(i); if ((number/i)%10>0 || mustdraw) { // System.out.println(i+"/"+((number/i)%10)+"/"+xoffset); mustdraw = true; drawClipImage(g, images[IMAGE_NUMBER], xoffset, y, width*((number/i)%10), 0, width, height, Graphics.RIGHT|Graphics.TOP); } xoffset+=width; } drawClipImage(g, images[IMAGE_NUMBER], xoffset, y, width*(number%10), 0, width, height, Graphics.RIGHT|Graphics.TOP); } } public void drawMissionBrief(Graphics g) { // g.setColor(0x000000); // g.drawString("MISSION "+res.menuindex, GAME_WIDTH/2, 0, Graphics.HCENTER|Graphics.TOP); // g.drawString("LOCATION: "+res.myStore.location, 0, 40, Graphics.LEFT|Graphics.TOP); // g.drawString("MONEY: "+res.myStore.money, 0, 60, Graphics.LEFT|Graphics.TOP); // g.drawString("POPULATION: "+res.myStore.population, 0, 80, Graphics.LEFT|Graphics.TOP); // g.drawString("SATISFACTION: "+res.myStore.satisfaction, 0, 100, Graphics.LEFT|Graphics.TOP); drawMenuBG(g, IMAGE_TITLE_BRIEFING); int upboxw = 50; int upboxh = 50; int upyoffset = 39; int upxoffset = 15; drawBox(g, upxoffset, upyoffset, upboxw, upboxh); drawBox(g, upxoffset+upboxw, upyoffset, GAME_WIDTH-2*upxoffset-upboxw, upboxh); g.drawImage(images[IMAGEARRAY_STAFF[res.itemid[0]]], upxoffset+upboxw/2, upyoffset+upboxh/2, Graphics.HCENTER|Graphics.VCENTER); g.setColor(0x000000); g.drawString(res.myStore.myStaff.StaffName[res.itemid[0]], upxoffset+upboxw+5, upyoffset+5, Graphics.LEFT|Graphics.TOP); int lowerboxw = GAME_WIDTH-upxoffset*2; int lowerboxh = 82; int loweryoffset = upyoffset+upboxh+8; int lowerxoffset = upxoffset; drawBox(g, lowerxoffset, loweryoffset, lowerboxw, lowerboxh); drawScrollBar(g, GAME_WIDTH-lowerxoffset-13, loweryoffset+13, 58, true); String displaystring = res.leveldescription[res.levelindex]+"\n"+"TARGET: "; // System.out.println("draw11111111111111111111"); for (int i=0; i=0 && res.myStore.myAd.AdAttribute[res.myStore.myAd.AdOn][FirmConfig.AD_PURCHASED]>=res.gameday-30) { adexpense = res.myStore.myAd.AdAttribute[res.myStore.myAd.AdOn][FirmConfig.AD_PRICE]; } drawOutlinedString(g, adexpense+"", boxx+boxw-5, boxy+titlehight+18*2+5, Graphics.RIGHT|Graphics.TOP, 0x000000, 0x00ff00); int totalexpense = res.myStore.income-(res.myStore.money-res.myStore.lastmoney)-adexpense-res.myStore.saleexpense; drawOutlinedString(g, totalexpense+"", boxx+boxw-5, boxy+titlehight+18*3+5, Graphics.RIGHT|Graphics.TOP, 0x000000, 0x00ff00); g.setColor(0x000000); if (res.myStore.money-res.myStore.lastmoney>=0) { g.drawString("盈利", GAME_WIDTH/2+5, boxy+100+3, Graphics.RIGHT|Graphics.TOP); drawOutlinedString(g, (res.myStore.money-res.myStore.lastmoney)+"", boxx+boxw-5, boxy+100+5, Graphics.RIGHT|Graphics.TOP, 0x000000, 0x00ff00); } else { g.drawString("(虧損)", GAME_WIDTH/2+5, boxy+100+3, Graphics.RIGHT|Graphics.TOP); drawOutlinedString(g, (res.myStore.lastmoney-res.myStore.money)+"", boxx+boxw-5, boxy+100+5, Graphics.RIGHT|Graphics.TOP, 0x000000, 0x00ff00); } // g.setColor(0x000000); // g.drawString("this is report page", GAME_WIDTH/2, GAME_HEIGHT/2, Graphics.HCENTER|Graphics.BOTTOM); // if (res.eventstring!=null && !res.eventstring.equals("")) { // g.setColor(0xffffff); // g.fillRect(20, 40, GAME_WIDTH-20*2, GAME_HEIGHT-40*2); // g.setColor(0x000000); // g.drawRect(20, 40, GAME_WIDTH-20*2, GAME_HEIGHT-40*2); // drawMGDialog(g, res.eventstring, 25, 45, GAME_WIDTH-20*2-10, GAME_HEIGHT-40*2-10, false); //// g.drawString(res.eventstring, GAME_WIDTH/2, GAME_HEIGHT/2, Graphics.HCENTER|Graphics.TOP); // } } public void drawStrategyPage(Graphics g) { drawNoteBook(g, MANAGE_STRATEGY); // int xoffset = images[IMAGEARRAY_MANAGE[MANAGE_STATUS]].getWidth(); // int width = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); g.setColor(0x000000); drawOutlinedString(g, "經營策略", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP, 0x000000, 0xffffff); // g.drawString("經營策略", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); // g.drawImage(images[IMAGE_BTN_LEFT], 40, upcolor.length+5, Graphics.LEFT|Graphics.TOP); // g.drawImage(images[IMAGE_BTN_RIGHT], GAME_WIDTH-40, upcolor.length+5, Graphics.RIGHT|Graphics.TOP); // g.drawString("存貨", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); int yoffset = upcolor.length+20; int ydistance = 78; int xoffset = images[IMAGEARRAY_NOTEBOOK[MANAGE_STRATEGY]].getWidth(); int width = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); for (int i=0; i<2; i++) { if (res.menuindex==i) {//0 && i==0) || (res.menuindex==1 && i==3)) { g.setColor(0xcccccc); g.fillRect(xoffset, yoffset+ydistance*i+1, width+4, ydistance-1); } g.setColor(0xcccccc); g.drawRect(xoffset, yoffset+ydistance*(i+1), width, 1); } g.setColor(0x000000); drawMGDialog(g, "現時我們的銷售策略是", xoffset+5, yoffset+2, width-10, g.getFont().getHeight()*2, false); g.drawString(res.myStore.STRATEGY_NAME[res.selectindex[0]], GAME_WIDTH-xoffset-15, yoffset+22, Graphics.RIGHT|Graphics.TOP); g.drawImage(images[IMAGE_BTN_RIGHT], GAME_WIDTH-xoffset-2, yoffset+24, Graphics.RIGHT|Graphics.TOP); g.drawImage(images[IMAGE_BTN_LEFT], GAME_WIDTH/2-10, yoffset+24, Graphics.RIGHT|Graphics.TOP); // drawMGDialog(g, "2.我們的售後服務是7日有壞包換", xoffset+5, yoffset+ydistance+2, width-10, g.getFont().getHeight()*2, false); // g.drawString("3.我們的營業時間是", xoffset+5, yoffset+ydistance*2+2, Graphics.LEFT|Graphics.TOP); // g.drawString("10a.m. - 10p.m.", xoffset+5, yoffset+ydistance*5/2+2, Graphics.LEFT|Graphics.TOP); g.drawString("職員正接受", xoffset+5, yoffset+ydistance+2, Graphics.LEFT|Graphics.TOP); g.drawString("訓練", 120, yoffset+ydistance+22, Graphics.LEFT|Graphics.TOP); g.drawString("費用: ", xoffset+5, yoffset+ydistance+42, Graphics.LEFT|Graphics.TOP); g.drawString("/月", xoffset+85, yoffset+ydistance+42, Graphics.LEFT|Graphics.TOP); if (res.selectindex[1]>0) { g.drawString(res.myStore.myStaff.STAFF_TRAINING_NAME[res.selectindex[1]-1], xoffset+55, yoffset+ydistance+22, Graphics.HCENTER|Graphics.TOP); drawOutlinedString(g, ""+res.myStore.myStaff.STAFF_TRAINING_ATTRIBUTE[res.selectindex[1]-1][FirmConfig.TRAINING_COST], xoffset+45, yoffset+ydistance+42, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); } else { g.drawString("NO", xoffset+55, yoffset+ydistance+22, Graphics.HCENTER|Graphics.TOP); drawOutlinedString(g, "0", xoffset+45, yoffset+ydistance+42, Graphics.LEFT|Graphics.TOP, 0x000000, 0x00ff00); } if (res.myStore.myStaff.trainid<0) { g.drawImage(images[IMAGE_BTN_LEFT], xoffset+5, yoffset+ydistance+25, Graphics.LEFT|Graphics.TOP); g.drawImage(images[IMAGE_BTN_RIGHT], 115, yoffset+ydistance+25, Graphics.RIGHT|Graphics.TOP); } // g.setColor(0x000000); // if (res.menuindex==0) { // g.setColor(0xff0000); // } // g.drawString("Our Strategy is "+res.myStore.STRATEGY_NAME[res.selectindex[0]], 0, 20, Graphics.LEFT|Graphics.TOP); // // g.setColor(0x000000); // g.drawString("Our working time is 8:00 - 20:00", 0, 40, Graphics.LEFT|Graphics.TOP); // // if (res.menuindex==1) { // g.setColor(0xff0000); // } // if (res.myStore.myStaff.trainid>=0) { // g.drawString("Our Staff is taking "+res.myStore.myStaff.STAFF_TRAINING_NAME[res.selectindex[1]], // 0, 60, Graphics.LEFT|Graphics.TOP); // } else { // g.drawString("NO TRAINING", // 0, 60, Graphics.LEFT|Graphics.TOP); // } } public void drawManagePage(Graphics g) { // g.setColor(0x000000); // g.drawString(res.statusoption[res.menuindex], GAME_WIDTH/2, GAME_HEIGHT/2, Graphics.HCENTER|Graphics.BOTTOM); // drawNoteBook(g, IMAGEARRAY_MANAGE[res.menuindex]); drawNoteBook2(g, MANAGE_BUY, "游戲管理", res.manageoption); // g.setColor(0x000000); // g.drawString("游戲管理", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); // int paperyoffset = upcolor.length+20; // int paperydistance = 20+1; // int xoffset = images[IMAGE_NOTE_LEFT_C01].getWidth(); // int paperw = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); // for (int i=0; i<8; i++) { //// g.setColor(0xffffff); //// g.fillRect(xoffset, paperyoffset+paperydistance*i, GAME_WIDTH-xoffset, 20); // if (i0) { g.drawString(res.myStore.myStaff.StaffName[staffid[0]], 110, boxy+boxh/2+40, Graphics.HCENTER|Graphics.TOP); g.drawImage(images[IMAGEARRAY_STAFF[staffid[0]]], boxx+3+22, boxy+boxh/2+25+22, Graphics.HCENTER|Graphics.VCENTER); } else { g.drawString("空缺", 110, boxy+boxh/2+40, Graphics.HCENTER|Graphics.TOP); g.drawImage(images[IMAGE_EMPTY], boxx+3+22, boxy+boxh/2+25+22, Graphics.HCENTER|Graphics.VCENTER); } } // public void drawAdjustPrice(Graphics g) { // g.setColor(0x000000); // g.drawString("this is adjust price page", GAME_WIDTH/2, GAME_HEIGHT/2, Graphics.HCENTER|Graphics.BOTTOM); // } public void drawBuyPage(Graphics g) { // g.setColor(0x000000); // // g.drawString(res.buyoption[res.menuindex], GAME_WIDTH/2, GAME_HEIGHT/2, Graphics.HCENTER|Graphics.BOTTOM); // drawNoteBook(g, IMAGEARRAY_MANAGE[MANAGE_BUY]); drawNoteBook2(g, MANAGE_BUY, "購入", res.buyoption); // g.setColor(0x000000); // g.drawString("采購物品", GAME_WIDTH/2, upcolor.length+3, Graphics.HCENTER|Graphics.TOP); // int paperyoffset = upcolor.length+20; // int paperydistance = 20+1; // int xoffset = images[IMAGE_NOTE_LEFT_C06].getWidth(); // int paperw = GAME_WIDTH-xoffset-images[IMAGE_NOTE_RIGHT].getWidth(); // for (int i=0; i<8; i++) { //// g.setColor(0xffffff); //// g.fillRect(xoffset, paperyoffset+paperydistance*i, GAME_WIDTH-xoffset, 20); // if (i=3) { g.drawImage(images[IMAGEARRAY_TIME[2]], 5, 1, Graphics.LEFT|Graphics.TOP); } else { g.drawImage(images[IMAGEARRAY_TIME[res.gametime/10]], 5, 1, Graphics.LEFT|Graphics.TOP); } int delta = FirmConfig.SATISFACTION_MAX-FirmConfig.SATISFACTION_MIN; int satisindex = (res.myStore.satisfaction-FirmConfig.SATISFACTION_MIN)/(delta/5); // System.out.println(satisindex); if (satisindex>=5) { satisindex = 4; } g.drawImage(images[IMAGEARRAY_SATIS[satisindex]], 30, 1, Graphics.LEFT|Graphics.TOP); g.drawImage(images[IMAGE_BOARD_PPL], GAME_WIDTH, 1, Graphics.RIGHT|Graphics.TOP); g.setColor(0x0000ff); g.drawString(((res.gameday%360)/30+1)+"/"+(res.gameday%30+1)+"/"+"0"+(res.gameday/360+1), 60, 5, Graphics.LEFT|Graphics.TOP); g.drawString("人流", GAME_WIDTH-images[IMAGE_BOARD_PPL].getWidth()+2, 3, Graphics.LEFT|Graphics.TOP); int ppmax = 45; g.setColor(0x0000ff); g.fillRect(GAME_WIDTH-50, 7, ppmax, 7); // delta = ; int pplength = res.myStore.totalcustomer*ppmax/FirmConfig.POPULATION_MAX; // System.out.println(pplength); g.setColor(0xff0000); g.fillRect(GAME_WIDTH-50, 7, pplength, 7); int walllength = images[IMAGE_WALL02].getWidth(); for (int i=0; i=0) { for (int i=0; i<3; i++) { g.drawImage(images[IMAGEARRAY_SHELF[shelf.length]], GAME_WIDTH-images[IMAGE_DISPLAY_LV0].getWidth()*i, 25, Graphics.RIGHT|Graphics.TOP); } } else { for (int i=0; i<3; i++) { g.drawImage(images[IMAGEARRAY_SHELF[0]], GAME_WIDTH-images[IMAGE_DISPLAY_LV0].getWidth()*i, 25, Graphics.RIGHT|Graphics.TOP); } } g.drawImage(images[IMAGE_BOARD_MONEY], GAME_WIDTH, 25, Graphics.RIGHT|Graphics.TOP); g.setColor(0xffff00); g.drawString("$"+res.myStore.money, GAME_WIDTH-images[IMAGE_BOARD_MONEY].getWidth()/2, 27, Graphics.HCENTER|Graphics.TOP); // if (res.myStore) facility = res.myStore.myItem.getItembyType(ITEMTYPE_PC, false); if (facility!=null) { // if (res.decolevel[DECORATION_PC]>=0) { g.drawImage(images[IMAGEARRAY_PC[facility.length]], GAME_WIDTH, 95, Graphics.RIGHT|Graphics.BOTTOM); } else { g.drawImage(images[IMAGEARRAY_PC[0]], GAME_WIDTH, 95, Graphics.RIGHT|Graphics.BOTTOM); } int[] sales = res.myStore.myStaff.getStaffbyType(STAFFTYPE_SALES, false); for (int i=0; i<3; i++) { if (i=0) { if (shelf!=null) { g.drawImage(images[IMAGEARRAY_SHELF[shelf.length]], -10, 127, Graphics.LEFT|Graphics.TOP); } else { g.drawImage(images[IMAGEARRAY_SHELF[0]], -10, 127, Graphics.LEFT|Graphics.TOP); } facility = res.myStore.myItem.getItembyType(ITEMTYPE_TV, false); if (facility!=null) { // if (res.decolevel[DECORA // if (res.decolevel[DECORATION_TV]>=0) { g.drawImage(images[IMAGEARRAY_TV[facility.length]], images[IMAGE_WALL02].getWidth()-2, 130, Graphics.RIGHT|Graphics.TOP); } int[] promoter = res.myStore.myStaff.getStaffbyType(STAFFTYPE_PROMOTER, false); if (promoter!=null && promoter.length>0) { g.drawImage(images[IMAGEARRAY_PROMOTER[promoter[0]-7]], images[IMAGE_WINDOW].getWidth(), GAME_HEIGHT-35, Graphics.RIGHT|Graphics.BOTTOM); } drawCustomer(g); g.drawImage(images[IMAGE_WINDOW], 0, GAME_HEIGHT, Graphics.LEFT|Graphics.BOTTOM); g.drawImage(images[IMAGE_WINDOW], GAME_WIDTH, GAME_HEIGHT, Graphics.RIGHT|Graphics.BOTTOM); // g.setColor(0x000000); // g.drawString("TIME "+res.gametime, 0, 0, Graphics.LEFT|Graphics.TOP); // g.drawString("MONEY "+res.myStore.money, 0, 20, Graphics.LEFT|Graphics.TOP); // g.drawString("ATTR "+res.myStore.attraction, 0, 40, Graphics.LEFT|Graphics.TOP); // g.drawString("POP "+res.myStore.totalcustomer, 0, 60, Graphics.LEFT|Graphics.TOP); // g.drawString("^O^ "+res.myStore.satisfaction, 0, 80, Graphics.LEFT|Graphics.TOP); // // int[] sale = res.myStore.myStaff.getStaffbyType(0, false); // for (int j=0; j=0) { //// System.out.println("debug000: "+mystore.CustomerStatus[m][0]); // if (res.myStore.CustomerStatus[res.myStore.serveindex][0]==FirmConfig.CUSTOMER_BUY) { // g.drawString(res.myStore.serveindex+"^-^...", 30, 120, Graphics.LEFT|Graphics.TOP); //// free = false; // } else if (res.myStore.CustomerStatus[res.myStore.serveindex][0]==FirmConfig.CUSTOMER_LANGUAGE_ERROR){ // g.drawString(res.myStore.serveindex+"-0-?", 30, 120, Graphics.LEFT|Graphics.TOP); //// free = false; // } else if (res.myStore.CustomerStatus[res.myStore.serveindex][0]==FirmConfig.CUSTOMER_START_BUY) { // g.drawString(res.myStore.serveindex+"^O^", 30, 120, Graphics.LEFT|Graphics.TOP); //// free = false; // } // // } // } // } // // int queueindex = 0; // for (int j=0; j0) { int yoffset = 50; int xoffset = GAME_WIDTH/2-images[IMAGE_BOARD_SETTING].getWidth()/2; int boxwidth = GAME_WIDTH-xoffset*2; int boxheight = 106; // System.out.println("draw gameover~~~~~~~~~~~~~~"+res.myStore.gameover); drawBox(g, xoffset-1, yoffset+images[IMAGE_BOARD_SETTING].getHeight()-4, boxwidth+2, boxheight+4); g.drawImage(images[IMAGE_BOARD_SETTING], xoffset, yoffset, Graphics.LEFT|Graphics.TOP); if (res.myStore.gameover==1) { g.drawImage(images[IMAGE_ICON_WIN], GAME_WIDTH/2, yoffset+images[IMAGE_BOARD_SETTING].getHeight()+5, Graphics.HCENTER|Graphics.TOP); g.drawImage(images[IMAGE_WORD_CONGRATULATION], GAME_WIDTH/2, yoffset+boxheight+5, Graphics.HCENTER|Graphics.BOTTOM); } else { g.drawImage(images[IMAGE_ICON_GAMEOVER], GAME_WIDTH/2, yoffset+images[IMAGE_BOARD_SETTING].getHeight()+5, Graphics.HCENTER|Graphics.TOP); g.drawImage(images[IMAGE_WORD_GAMEOVER], GAME_WIDTH/2, yoffset+boxheight+5, Graphics.HCENTER|Graphics.BOTTOM); } } } int[] CUSTOMER_STANDX = new int[]{CUSTOMER_STANDX_1, CUSTOMER_STANDX_2, CUSTOMER_STANDX_3}; // int[] direction;// = 0; public void drawCustomer(Graphics g) { for (int j=0; jCUSTOMER_STANDY) || // (res.myStore.nextindex>=0 && res.customerlocation[j][1]>CUSTOMER_STANDY+CUSTOMER_DISTANCE*(j-res.myStore.nextindex+1))) { res.customerframe[j]= (res.customerframe[j]+1)%3; if (res.customerlocation[j][1]>CUSTOMER_STANDY) { if (res.customerlocation[j][0]CUSTOMER_STANDX[m]+5) { res.customerlocation[j][0]-=STEP_LENGTH; res.direction[j] = 1; } else if (res.customerlocation[j][0]CUSTOMER_STANDX_1) { // direction = 1; // res.customerlocation[j][0]-=STEP_LENGTH; // } else { // res.myStore.setCustomerStatus(j, FirmConfig.CUSTOMER_START_BUY); // } // break; // case 1: // res.myStore.setCustomerStatus(j, FirmConfig.CUSTOMER_START_BUY); // break; // case 2: // if (res.customerlocation[j][0]CUSTOMER_WAITY-res.random(30)){ res.customerlocation[j][1]-=STEP_LENGTH; // res.direction[j] = 0; } else { res.direction[j] = res.random(2)+1; } } else if (res.direction[j]==1) {//&& res.customerlocation[j][0]>5) { // direction = 1; // if (res.customerlocation[j][0]>5) { res.customerlocation[j][0]-=STEP_LENGTH; // res.direction[j]=1; if (res.customerlocation[j][0]<5) { res.direction[j] = 2; } } else if (res.direction[j] == 2) {// && res.customerlocation[j][0]GAME_WIDTH-5) { res.direction[j] = 1; } } } else if (res.myStore.CustomerStatus[j][0]==FirmConfig.CUSTOMER_LEAVE_HAPPY || res.myStore.CustomerStatus[j][0]==FirmConfig.CUSTOMER_LEAVE_UNHAPPY) { // if (res.customerlocation[j][1]>CUSTOMER_STANDY) { // res.customerframe[j]= (res.customerframe[j]+1)%3; // res.customerlocation[j][1]-=STEP_LENGTH; // direction = 0; // } else res.customerframe[j]= (res.customerframe[j]+1)%3; if (res.customerlocation[j][0]>CUSTOMER_STANDX_2+5){ res.customerlocation[j][0]-=STEP_LENGTH; res.direction[j] = 1; } else if (res.customerlocation[j][0]dialog_displayheight) { scrollh = (scrollbarh-images[IMAGE_BTN_SCROLL].getHeight())/(dialog_length-dialog_displayheight); } } else { scrollh = (scrollbarh-images[IMAGE_BTN_SCROLL].getHeight())/(res.table_length-res.table_displaylength); } g.setColor(0xffff00); g.fillRect(scrollbarx, scrollbary, 4, scrollbarh); g.setColor(0x000000); g.drawRect(scrollbarx, scrollbary, 4, scrollbarh); g.drawImage(images[IMAGE_BTN_SCROLL], scrollbarx-1, scrollbary+res.scroll*scrollh, Graphics.LEFT|Graphics.TOP); g.drawImage(images[IMAGE_BTN_UP], scrollbarx-2, scrollbary-2, Graphics.LEFT|Graphics.BOTTOM); g.drawImage(images[IMAGE_BTN_DOWN], scrollbarx-2, scrollbary+scrollbarh+2, Graphics.LEFT|Graphics.TOP); } int bg_animationx = 0; int bg_animationy = 0; public void drawMovingBG(Graphics g) { for (int a = bg_animationx; a < GAME_WIDTH; a += images[IMAGE_PATTERN].getWidth()) { for (int b = bg_animationy; b < GAME_HEIGHT; b += images[IMAGE_PATTERN].getHeight()) { g.drawImage(images[IMAGE_PATTERN], a, b, Graphics.TOP | Graphics.LEFT); } } if (bg_animationx == 0) { bg_animationx = 0 - images[IMAGE_PATTERN].getWidth(); } if (bg_animationy == 0) { bg_animationy = 0 - images[IMAGE_PATTERN].getHeight(); } bg_animationx += 1; bg_animationy += 1; } public void drawMenuBG(Graphics g, int titleimage) { drawMovingBG(g); // int width = images[IMAGE_PATTERN].getWidth()-1; // int height = images[IMAGE_PATTERN].getHeight()-1; // for (int i=0; i 1000) { b = res.loadstring[GameResource.random(res.loadstring.length)]; timer = System.currentTimeMillis(); dlb++; dlb = dlb%4; for (int i=0;i