鍙傚姞宸ヤ綔涓庡湪瀛︽牎錛屾湁涓鐐逛笉鍚屾槸錛氭槸鍚︿負寮鴻揩鎬х殑鈥斺斿浜庡伐浣滐紝鍗充嬌浣犱笉鍠滄錛屽悓鏍瘋鍋氥?br />鏃㈢劧鍦ㄥ仛錛岄偅灝卞緱灝藉姏鍋氾紝姣忎釜浜洪兘搴旇濡傛銆?br />鍔姏鎬濊冿紝瀛︿範銆?br />絎旇榪樻槸瑕佸仛鐨勶細
絎旇涓錛?br />鍙戠墝紼嬪簭錛屽紼嬪簭鍛樻潵璇達紝鍙戠墝鐨勮繃紼嬪彧鏄竴涓皢鏈潵鎺掑ソ搴忕殑鏁扮粍鐨勯『搴忔墦涔辮屽凡錛岃繖涓柟娉曡嶇殑鍙槸涓涓皬鑱槑錛屼嬌寰?Random.nextInt() 鏂規硶鐨勮繍琛屾鏁板彧絳変簬鐗岀殑鏁伴噺
聽1聽聽聽聽聽/**
聽2聽聽聽聽聽聽*聽@author聽liltos
聽3聽聽聽聽聽聽*聽@param聽length聽瑕佸彂鐨勭墝鏁?br />聽4聽聽聽聽聽聽*聽
聽5聽聽聽聽聽聽*聽闅忔満鍙戠墝鐨勭▼搴忥紝瀹冪殑鐗圭偣鍦ㄤ簬鍙憀ength寮犵墝鐨勮瘽
聽6聽聽聽聽聽聽*聽鍙榪愯length嬈andom.nextInt()鏂規硶錛?br />聽7聽聽聽聽聽聽*聽紼嬪簭涓殑4涓猣or寰幆錛屾湁2涓敤浜庤緭鍑猴紝1涓敤浜庢暟緇勭殑鍒濆鍖?br />聽8聽聽聽聽聽聽*聽鍙湁涓涓猣or寰幆鏄敤浜庡彂鐗岀殑
聽9聽聽聽聽聽聽*/
10聽聽聽聽聽public聽static聽void聽randomDeliverCard(int聽length)聽{
11聽聽聽聽聽聽聽聽聽int[]聽card1聽=聽new聽int[length];
12聽聽聽聽聽聽聽聽聽int[]聽result聽=聽new聽int[length];
13聽
14聽聽聽聽聽聽聽聽聽for聽(int聽i聽=聽0;聽i聽<聽card1.length;聽i++)
15聽聽聽聽聽聽聽聽聽聽聽聽聽card1[i]聽=聽i聽+聽1;
16聽聽聽聽聽聽聽聽聽for聽(int聽i聽=聽0;聽i聽<聽card1.length;聽i++)聽{
17聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.print(card1[i]聽+聽"\t");
18聽聽聽聽聽聽聽聽聽聽聽聽聽if聽((i聽+聽1)聽%聽9聽==聽0)
19聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println();
20聽聽聽聽聽聽聽聽聽}
21聽
22聽聽聽聽聽聽聽聽聽Random聽rand聽=聽new聽Random(System.currentTimeMillis());
23聽
24聽聽聽聽聽聽聽聽聽int聽rand_index聽=聽0;
25聽聽聽聽聽聽聽聽聽int聽remain聽=聽card1.length;
26聽
27聽聽聽聽聽聽聽聽聽/*
28聽聽聽聽聽聽聽聽聽聽*聽褰撳皢rand_index涓婄殑鏁板彇鍑哄悗錛屼負闃叉鍐嶆鍙栧埌璇ユ暟錛?br />29聽聽聽聽聽聽聽聽聽聽*聽渚垮皢鏁扮粍鏈熬鐨勬暟濉厖鍒拌浣嶇疆涓婏紝騫跺皢鏁扮粍鏈熬鐨勬爣蹇梤emain鍑?
30聽聽聽聽聽聽聽聽聽聽*聽鑰屼笅鏍囬殢鏈烘暟鐨勫彇鍊間竴鐩存槸鍦╮emain鑼冨洿涔嬪唴鐨?br />31聽聽聽聽聽聽聽聽聽聽*/
32聽聽聽聽聽聽聽聽聽for聽(int聽i聽=聽0;聽i聽<聽card1.length;聽i++)聽{
33聽聽聽聽聽聽聽聽聽聽聽聽聽rand_index聽=聽Math.abs(rand.nextInt()聽%聽remain);
34聽聽聽聽聽聽聽聽聽聽聽聽聽result[i]聽=聽card1[rand_index];
35聽聽聽聽聽聽聽聽聽聽聽聽聽card1[rand_index]聽=聽card1[remain聽-聽1];
36聽聽聽聽聽聽聽聽聽聽聽聽聽remain--;
37聽聽聽聽聽聽聽聽聽}
38聽
39聽聽聽聽聽聽聽聽聽System.out.println("\n\n");
40聽聽聽聽聽聽聽聽聽for聽(int聽i聽=聽0;聽i聽<聽result.length;聽i++)聽{
41聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.print(result[i]聽+聽"\t");
42聽聽聽聽聽聽聽聽聽聽聽聽聽if聽((i聽+聽1)聽%聽10聽==聽0)
43聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽System.out.println();
44聽聽聽聽聽聽聽聽聽}
45聽聽聽聽聽}
絎旇浜岋細
鍒濆鍖栦竴涓?TiledLayer 鍦板浘錛屼竴鑸儏鍐典笅鐨?TiledLayer 鍦板浘鍙槸涓涓簩緇存暟緇勶紝榪欎釜鏂規硶鍙槸灝嗚繖涓簩緇存暟緇勬紜湴杞寲鎴愭湡鏈涚殑鍦板浘銆?br />聽1聽/**
聽2聽聽*聽@parm聽array聽浠h〃鍦板浘鐨勬暟緇?br />聽3聽聽*/
聽4聽public聽void聽initMap(int[][]聽array)聽{
聽5聽聽聽聽聽map聽=聽new聽TiledLayer(array[0].length,聽array.length,聽image,聽w,聽h);
聽6聽聽聽聽聽for聽(int聽i聽=聽0;聽i聽<聽array.length;聽i++)聽{
聽7聽聽聽聽聽聽聽聽for聽(int聽j聽=聽0;聽j聽<聽array[0].length;聽j++)聽{
聽8聽聽聽聽聽聽聽聽聽聽聽聽map.setCell(j,聽i,聽array[i][j]);
聽9聽聽聽聽聽聽聽聽}
10聽聽聽聽聽}
11聽}
榪欎釜鏂規硶鐨勫叧閿箣澶勫湪浜庤皟鐢?鏋勯犳柟娉曞拰 setCell() 鏂規硶鏃跺墠涓や釜鍙傛暟鐨勯『搴忋?br />
絎旇涓夛細
鍏充簬涓涓狫2ME紼嬪簭鐨勬鏋訛紝鍦ㄧ涓嬈″啓J2ME鐨勬父鎴忔椂錛屽彧鏄劅瑙変竴澶撮浘姘淬備笅闈㈣繖涓槸鎬葷粨鐨勪竴鐐圭偣涓滀笢錛?br />
MIDlet
銆銆GameCanvas gameCanvas;
銆銆GameThread gameThread;//濡傛灉鏈夊叾瀹冪殑涓浜涗簨鎯?鍙互鍦ㄦ瀹氫箟鏇村鐨勭嚎紼?騫跺湪 startApp() 鏂規硶鍐呭惎鍔ㄧ嚎紼?br />銆銆Display display;
銆銆startApp(){
銆銆銆銆gameThread.start();
銆銆銆銆display.setCurrent(gameCanvas);//濡傛灉鏈夊繀瑕?鍙互璋冩暣鏄劇ず瀵硅薄
銆銆}
銆撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱?br />GameCanvas
銆銆LayerManager layerManager;
銆銆GameCanvas(){
銆銆銆銆super(false);
銆銆銆銆layerManager = new LayerManager(this);
銆銆}
銆銆paint(Graphics g){
銆銆銆銆switch(gameState){
銆銆銆銆銆銆case GAMING:
銆銆銆銆銆銆銆銆layerManager.paint(g, x_view, y_view);
銆銆銆銆}
銆銆}
銆銆refresh(){
銆銆銆銆layerManager.refresh();
銆銆銆銆zepaint();
銆銆}
銆銆doKeyEvent(){
銆銆銆銆int keyState = this.getKeyStates();
銆銆銆銆switch(gameState){
銆銆銆銆銆銆case GAMING:
銆銆銆銆銆銆銆銆layerManager.doKeyEvent(keyState);
銆銆銆銆銆銆銆銆break;
聽聽聽聽聽聽聽聽聽聽聽 case ...:(other state)
銆銆銆銆銆銆銆銆//鐢婚潰鍙樺寲涓嶅ぇ/闈炴父鎴忕姸鎬佷笅,璋冪敤鏈被鐨勪簨浠跺鐞嗘柟娉?br />
銆銆銆銆銆銆銆銆break;
銆銆銆銆}
銆銆}
銆銆zepaint(){
銆銆銆銆paint(g);
銆銆銆銆flushGraphics();
銆銆}
銆銆澶勭悊闈欐鐢婚潰鍦ㄦ湰綾諱腑
銆撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱?br />聽LayerManager
銆銆GameCanvas gameCanvas;
銆銆LayerManager(GameCanvas gameCanvas){}
銆銆refresh(){
銆銆銆...refresh sprites...
銆銆}
銆銆doKeyEvent(int key){
銆銆銆銆switch(key){
銆銆銆銆銆銆case ...:
銆銆銆銆銆銆銆銆handle data;
銆銆銆銆}
銆銆}
銆銆paint(Graphics g, int x, y){
銆銆銆銆super();
銆銆銆...paint sprites...
銆銆}
聽 寰堝紼嬪簭浼氬彧璋冪敤 append(Layer) 鏂規硶鑰屼笉閲嶈澆鐖剁被鐨?paint(Graphics, int, int) 鏂規硶錛屽悓鏍峰彲浠ュ疄鐜版父鎴忎腑鐨勭粯鐢誨姛鑳姐傝屽綋鐢ㄧ殑鏄?TiledLayer 浣滆儗鏅椂錛屾垜榪樹笉鐭ラ亾濡傛灉閲嶈澆璇ユ柟娉?-_-! 鏈川涓婃槸瀵瑰潗鏍囩郴鐨勮璇嗕笉娓?
銆撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱撱?br />GameThread
銆銆GameCanvas gameCanvas;
銆銆GameThread(GameCanvas gameCanvas){}
銆銆run(){
銆銆銆銆while(true){
銆銆銆銆銆銆gameCanvas.doKeyEvent();
銆銆銆銆銆銆gameCanvas.refresh();
銆銆銆銆銆銆Thread.sleep(100);
銆銆銆銆}
銆銆}
------------------------
銆銆榪欏彧鏄垜涓鑸▼搴忛噷鐨勬鏋訛紝鍙笉鏄妗嗘灦錛屼絾浠庢垜鎺ヨЕ榪囩殑鏉ョ湅錛岃繖涓鏋惰繕鏄瘮杈冪粡鍏哥殑銆?br />
銆銆濡傛鐨勭瑪璁板笇鏈涜鍒漢鑳藉鐪嬫噦銆?br />
]]>