當前位置:首頁 » 游戲種類 » 安卓小游戲開發源碼

安卓小游戲開發源碼

發布時間: 2023-01-09 01:17:56

① 怎樣獲得小游戲的源代碼並進行改造開發 以4399的「瘋狂小人戰役」為例

這兩個伺服器程序設計的很完善,略加改造(漢化)便可直接使用。我們使用BDE伺服器。 本例以Paradox本地資料庫為例,說明如何開發客戶端軟體。 查看更多答案>>

② 基於eclipse開發一個安卓小游戲

你是大學生吧?女生怎麼想起學計算機。建議隨便下載一個簡單的游戲,然後找人反編譯一下,修改下,變成你自己的。我是高中畢業生,也在學習Android編程,可是我的能力還不到幫你的地步,我也是初學者。有大神直接建議讓我去學C,於是我又開始學C了。愛莫能助,試試我的辦法,希望能有幫助。

③ 微信小游戲製作可視化工具怎樣下載源碼

微信小游戲製作可視化工具下載源碼。
准備工作:
1.一部已經root的Android手機
2.安裝微信6.6.1版本的apk
3.電腦上已安裝AndroidSDK並可以使用adb命令
需要注意的是必須是已經root了的Android手機,否則將沒有許可權訪問對應手機的系統文件夾。
通過USB將手機連接到電腦上,然後運行以下命令
$adbdevices
如果顯示了一下信息
1Listofdevicesattached
271MBBL6228EUdevice
說明手機已經連接到電腦上,如顯示未找到adb命令,則說明AndroidSDK安裝錯誤或adb未添加到電腦path中,請自行上網進行相應查閱。
手機連接電腦成功後,運行一下命令
1$adbshell
2$su
終端出類似root@{手機型號}前綴,說明已經進入到root模式下
$cd/data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg
{User}為當年用戶的用戶名,類似於1ed**********c514a18
然後當前目錄就是微信用於存放小程序和小游戲下載包的位置
1$ls
2_-791877121_3.WXapkg
3_1079392110_5.Wxapkg
4_1079392110_5.Wxapkg_xdir
5_1123949441_92.WXapkg
6_576754918_1.Wxapkg
以上是我的微信中所下載過的小程序和小游戲源碼

因為/data目錄為系統級目錄,無法直接將其進行復制,需要重新掛載為可操作模式
$mount-0remount,rW/data
此時就可以將當前目錄下的文件拷貝到sdcard中
$cat1079392110_5.WXapkg>/mnt/sdcard/_1079392110_5.WXapkg
然後將_1079392110_5.wxapkg文件拷貝到電腦里,通過該腳本進行解壓後,即為其源碼。

編譯源碼
通過微信小游戲開發工具新建一個空白的小程序或者小游戲的項目,主要不要選擇快速啟動模板。
然後把剛才解壓出來的源代碼復制到剛剛創建的項目目錄中,開發工具會提示編譯錯誤,這時只要在項目中新建一個game.json文件,並在文件里寫入以下代碼
{「deviceOrientation":"portrait"}
然後將開發工具的調試基礎庫改為gam,程序就會在開發者工具里運行起來了。

④ 用C++編寫的小游戲源代碼

五子棋的代碼:

#include<iostream>

#include<stdio.h>

#include<stdlib.h>

#include <time.h>

using namespace std;

const int N=15; //15*15的棋盤

const char ChessBoardflag = ' '; //棋盤標志

const char flag1='o'; //玩家1或電腦的棋子標志

const char flag2='X'; //玩家2的棋子標志

typedef struct Coordinate //坐標類

{

int x; //代錶行

int y; //代表列

}Coordinate;

class GoBang //五子棋類

{

public:

GoBang() //初始化

{

InitChessBoard();

}

void Play() //下棋

{

Coordinate Pos1; // 玩家1或電腦

Coordinate Pos2; //玩家2

int n = 0;

while (1)

{

int mode = ChoiceMode();

while (1)

{

if (mode == 1) //電腦vs玩家

{

ComputerChess(Pos1,flag1); // 電腦下棋

if (GetVictory(Pos1, 0, flag1) == 1) //0表示電腦,真表示獲勝

break;

PlayChess(Pos2, 2, flag2); //玩家2下棋

if (GetVictory(Pos2, 2, flag2)) //2表示玩家2

break;

}

else //玩家1vs玩家2

{

PlayChess(Pos1, 1, flag1); // 玩家1下棋

if (GetVictory(Pos1, 1, flag1)) //1表示玩家1

break;

PlayChess(Pos2, 2, flag2); //玩家2下棋

if (GetVictory(Pos2, 2, flag2)) //2表示玩家2

break;

}

}

cout << "***再來一局***" << endl;

cout << "y or n :";

char c = 'y';

cin >> c;

if (c == 'n')

break;

}

}

protected:

int ChoiceMode() //選擇模式

{

int i = 0;

system("cls"); //系統調用,清屏

InitChessBoard(); //重新初始化棋盤

cout << "***0、退出 1、電腦vs玩家 2、玩家vs玩家***" << endl;

while (1)

{

cout << "請選擇:";

cin >> i;

if (i == 0) //選擇0退出

exit(1);

if (i == 1 || i == 2)

return i;

cout << "輸入不合法" << endl;

}

}

void InitChessBoard() //初始化棋盤

{

for (int i = 0; i < N + 1; ++i)

{

for (int j = 0; j < N + 1; ++j)

{

_ChessBoard[i][j] = ChessBoardflag;

}

}

}

void PrintChessBoard() //列印棋盤,這個函數可以自己調整

{

system("cls"); //系統調用,清空屏幕

for (int i = 0; i < N+1; ++i)

{

for (int j = 0; j < N+1; ++j)

{

if (i == 0) //列印列數字

{

if (j!=0)

printf("%d ", j);

else

printf(" ");

}

else if (j == 0) //列印行數字

printf("%2d ", i);

else

{

if (i < N+1)

{

printf("%c |",_ChessBoard[i][j]);

}

}

}

cout << endl;

cout << " ";

for (int m = 0; m < N; m++)

{

printf("--|");

}

cout << endl;

}

}

void PlayChess(Coordinate& pos, int player, int flag) //玩家下棋

{

PrintChessBoard(); //列印棋盤

while (1)

{

printf("玩家%d輸入坐標:", player);

cin >> pos.x >> pos.y;

if (JudgeValue(pos) == 1) //坐標合法

break;

cout << "坐標不合法,重新輸入" << endl;

}

_ChessBoard[pos.x][pos.y] = flag;

}

void ComputerChess(Coordinate& pos, char flag) //電腦下棋

{

PrintChessBoard(); //列印棋盤

int x = 0;

int y = 0;

while (1)

{

x = (rand() % N) + 1; //產生1~N的隨機數

srand((unsigned int) time(NULL));

y = (rand() % N) + 1; //產生1~N的隨機數

srand((unsigned int) time(NULL));

if (_ChessBoard[x][y] == ChessBoardflag) //如果這個位置是空的,也就是沒有棋子

break;

}

pos.x = x;

pos.y = y;

_ChessBoard[pos.x][pos.y] = flag;

}

int JudgeValue(const Coordinate& pos) //判斷輸入坐標是不是合法

{

if (pos.x > 0 && pos.x <= N&&pos.y > 0 && pos.y <= N)

{

if (_ChessBoard[pos.x][pos.y] == ChessBoardflag)

{

return 1; //合法

}

}

return 0; //非法

}

int JudgeVictory(Coordinate pos, char flag) //判斷有沒有人勝負(底層判斷)

{

int begin = 0;

int end = 0;

int begin1 = 0;

int end1 = 0;

//判斷行是否滿足條件

(pos.y - 4) > 0 ? begin = (pos.y - 4) : begin = 1;

(pos.y + 4) >N ? end = N : end = (pos.y + 4);

for (int i = pos.x, j = begin; j + 4 <= end; j++)

{

if (_ChessBoard[i][j] == flag&&_ChessBoard[i][j + 1] == flag&&

_ChessBoard[i][j + 2] == flag&&_ChessBoard[i][j + 3] == flag&&

_ChessBoard[i][j + 4] == flag)

return 1;

}

//判斷列是否滿足條件

(pos.x - 4) > 0 ? begin = (pos.x - 4) : begin = 1;

(pos.x + 4) > N ? end = N : end = (pos.x + 4);

for (int j = pos.y, i = begin; i + 4 <= end; i++)

{

if (_ChessBoard[i][j] == flag&&_ChessBoard[i + 1][j] == flag&&

_ChessBoard[i + 2][j] == flag&&_ChessBoard[i + 3][j] == flag&&

_ChessBoard[i + 4][j] == flag)

return 1;

}

int len = 0;

//判斷主對角線是否滿足條件

pos.x > pos.y ? len = pos.y - 1 : len = pos.x - 1;

if (len > 4)

len = 4;

begin = pos.x - len; //橫坐標的起始位置

begin1 = pos.y - len; //縱坐標的起始位置

pos.x > pos.y ? len = (N - pos.x) : len = (N - pos.y);

if (len>4)

len = 4;

end = pos.x + len; //橫坐標的結束位置

end1 = pos.y + len; //縱坐標的結束位置

for (int i = begin, j = begin1; (i + 4 <= end) && (j + 4 <= end1); ++i, ++j)

{

if (_ChessBoard[i][j] == flag&&_ChessBoard[i + 1][j + 1] == flag&&

_ChessBoard[i + 2][j + 2] == flag&&_ChessBoard[i + 3][j + 3] == flag&&

_ChessBoard[i + 4][j + 4] == flag)

return 1;

}

//判斷副對角線是否滿足條件

(pos.x - 1) >(N - pos.y) ? len = (N - pos.y) : len = pos.x - 1;

if (len > 4)

len = 4;

begin = pos.x - len; //橫坐標的起始位置

begin1 = pos.y + len; //縱坐標的起始位置

(N - pos.x) > (pos.y - 1) ? len = (pos.y - 1) : len = (N - pos.x);

if (len>4)

len = 4;

end = pos.x + len; //橫坐標的結束位置

end1 = pos.y - len; //縱坐標的結束位置

for (int i = begin, j = begin1; (i + 4 <= end) && (j - 4 >= end1); ++i, --j)

{

if (_ChessBoard[i][j] == flag&&_ChessBoard[i + 1][j - 1] == flag&&

_ChessBoard[i + 2][j - 2] == flag&&_ChessBoard[i + 3][j - 3] == flag&&

_ChessBoard[i + 4][j - 4] == flag)

return 1;

}

for (int i = 1; i < N + 1; ++i) //棋盤有沒有下滿

{

for (int j =1; j < N + 1; ++j)

{

if (_ChessBoard[i][j] == ChessBoardflag)

return 0; //0表示棋盤沒滿

}

}

return -1; //和棋

}

bool GetVictory(Coordinate& pos, int player, int flag) //對JudgeVictory的一層封裝,得到具體那個玩家獲勝

{

int n = JudgeVictory(pos, flag); //判斷有沒有人獲勝

if (n != 0) //有人獲勝,0表示沒有人獲勝

{

PrintChessBoard();

if (n == 1) //有玩家贏棋

{

if (player == 0) //0表示電腦獲勝,1表示玩家1,2表示玩家2

printf("***電腦獲勝*** ");

else

printf("***恭喜玩家%d獲勝*** ", player);

}

else

printf("***雙方和棋*** ");

return true; //已經有人獲勝

}

return false; //沒有人獲勝

}

private:

char _ChessBoard[N+1][N+1];

};

(4)安卓小游戲開發源碼擴展閱讀:

設計思路

1、進行問題分析與設計,計劃實現的功能為,開局選擇人機或雙人對戰,確定之後比賽開始。

2、比賽結束後初始化棋盤,詢問是否繼續比賽或退出,後續可加入復盤、悔棋等功能。

3、整個過程中,涉及到了棋子和棋盤兩種對象,同時要加上人機對弈時的AI對象,即涉及到三個對象。

⑤ 求:手機軟體源代碼!

其實這里有很多的:

[gnokii-0.3.2.tar.gz]
Nokia手機工具程序。可以管理手機的電話薄,發送/接收短消息,查看電池狀態等 (2001-02-14, UNIX, 731KB, 2130次)

[smslink-0.44b.tar.gz]
手機短消息服務的伺服器和客戶端 (2001-01-08, LINUX, 91KB, 1883次)

[移動簡訊SMS綜合資料庫.rar]
短消息基礎知識;短消息的信息處理流程及其分析、解決問題的方法;手機簡訊息SMS開發—編碼,解碼;PDU介紹;短消息的體系結構等 (2005-09-28, CHM, 1009KB, 1536次)

[nle-0.0.1-2.tgz]
可以修改Nokia手機的logo圖標的程序 (2001-02-14, LINUX, 21KB, 1442次)

[是男人就下一百層SHY.rar]
製作的第一款休閑類的手機游戲,適合初學者參考 (2005-06-15, Java, 484KB, 1357次)

[sms_client-2.0.7k.tgz]
使用TAP的蜂窩型GSM手機短消息服務中心 (2001-01-08, LINUX, 82KB, 1333次)

[mobile_sms.zip]
使用手機發送短消息的編程方法 (2001-11-21, HTML, 5KB, 1174次)

[kvanttisms-src-0.5.tgz]
Java寫的通過手機收發簡訊息的程序。 (2001-11-20, Java, 10KB, 1049次)

[BREW開發-海信(王宏兵).rar]
深入研究BREW手機游戲開發———— 王洪信開發者最好的初學資料 (2005-09-26, Visual C++, 7229KB, 841次)

[jSMSEngine_2_0_4.zip]
開源的手機簡訊開發包!包括例子程序和比較詳細的文檔,還有開發者的網站!來源於sourceforge! (2006-01-21, Java, 438KB, 729次)

[qrcode_js.zip]
手機內嵌二維條碼圖像識別的JAVA的源程序,強烈推薦下載。 (2006-01-14, Java, 2210KB, 677次)

[gprs_sms.zip]
一個用COM或USB介面連接gsm/gprs手機進行簡訊收發的程序,用到的是simense的通訊模塊 (2003-02-20, Visual C++, 97KB, 629次)

[PaoPao.rar]
j2me手機泡泡龍游戲。寫得不錯還未完工的版本。不過可以用來學習。 (2005-03-04, Java, 83KB, 613次)

[MakeMap.rar]
用java寫的地圖編輯器,可用於j2me手機游戲的地圖編輯。 (2005-03-04, Java, 26KB, 606次)

[J2mebox.rar]
一個類似打地鼠的j2me手機游戲。 (2005-03-04, Java, 58KB, 521次)

[shoujihaomachaxun.rar]
輸入手機號碼可查詢:歸屬地址、手機號碼、區號、所屬卡型 (2006-06-05, Java, 686KB, 520次)

[rich_man+src.rar]
大富翁手機游戲。 (2005-03-04, Java, 269KB, 513次)

[gsmssend-1.6.tar.gz]
通過網站發送手機簡訊息的程序。需要GNOME/GTK支持 (2001-11-20, LINUX, 352KB, 498次)

[MTKstart.rar]
台灣聯發(MTK)手機晶元資料,可作為手機應用的平台 (2007-08-09, C-C++, 118KB, 495次)

[C# 發簡訊.rar]
使用C#發簡訊,連接Modem或者手機,通過串口發送簡訊, (2004-06-30, CSharp, 437KB, 469次)

[WindowsMobile5.0.rar]
Windows Mobile 5.0 三十幾個經典手機軟體開發源碼希望對大家有幫助. (2006-08-30, CSharp, 578KB, 449次)

[motorola_RingerToneFormat.zip]
motorola手機鈴聲格式文檔 (2002-06-07, PDF, 45KB, 445次)

[ksiemens-0.1.tar.gz]
KDE下的西門子手機管理程序,如圖標,電話薄,簡訊息等管理 (2001-11-21, LINUX, 3437KB, 444次)

[nec麻將.rar]
一個java編的小游戲.對初學手機游戲編程的人很有用啊. (2005-06-07, Java, 50KB, 434次)

[nokiacomposer.src.zip]
Nokia手機語音管理程序,如上載音樂等。 (2001-11-21, Visual C++, 315KB, 422次)

[SmartMessagingFAQ.zip]
諾基亞手機圖片鈴聲開發文檔 (2002-06-07, PDF, 23KB, 410次)

[motolora_smscertguide.zip]
motorola手機簡訊息開發文檔 (2002-06-07, PDF, 134KB, 400次)

[MV100-0.1.rar]
是一個手機功能的模擬程序,從界面到功能都做了很好的模擬 (2005-07-29, C-C++, 14630KB, 384次)

[helix.src.0812.rar]
著名的 helix realplayer 基於手機 symbian 系統的 播放器全套源代碼,內含編譯工具、以及配套相關軟體:WinCVS、Python等。花了近一個多月才整理完成,是非常難得的全套代碼。 (2005-05-19, C++, 43787KB, 373次)

[eluosi方塊.rar]
經典的手機游戲源碼俄羅斯方塊,基於C+Brew開發 (2005-07-14, C-C++, 425KB, 373次)

[MTK2.rar]
這是我上傳MTK手機開發的一些資料2,這兩天起上傳6份資料,全部是手開發的。希望對你們有用。 (2007-04-13, C-C++, 5859KB, 371次)

[resource]
壓縮包中一個為一般操作系統下的fft,一個是手機或類似設備中的T9拼音輸入法 (2003-08-05, C-C++, 53KB, 359次)

[SeaHorse.rar]
手機游戲,畫面效果還可以,可以作為手機游戲入門參考 (2005-06-15, Java, 273KB, 356次)

[nec 打飛機.rar]
一個JAVA編的小游戲,對初學手機游戲的人很有幫助. (2005-06-07, Java, 73KB, 335次)

[多級菜單.rar]
/*[原創]一個樹形多級菜單參考程序 這是一個用於車載電話的菜單程序,可以看成是手機功能菜單的簡化板. 我所認為的樹形多級菜單是指:在一個父菜單項目下面有多個子菜單, 子菜單下面又有多個孫菜單...,進入下層菜單主要依*當前選中的索引.有點象文件的目錄結構. 本木從前實現這類的菜單主要*分層的switch語句,每層都是一個switch.但當我看到曉奇大俠的 程序和耳朵灌滿lq等人的爭論後,那時那地,我的心境變化了,我意識到指針代表了先進的生產力, 代表了社會的發展方向,是建設和諧社會的必要條件.不管你用了多長時間C語言,只要你不善於用 一個小針指來指去,你就是那種"用嘴吃飯的高貴騎士,決不用屁股裝彈步槍"的守舊分子和社會發 展的絆腳石.(跑題太遠,刪去1萬字...打住) .言歸正傳,下面的程序適用CPU為Mega16,編譯器為CVAVR 1.24.4a 由於按鍵數目較多,所以按鍵程 序把按鍵事件分為數字鍵,快捷鍵,確認鍵,取消鍵,上下翻鍵幾類,以減小菜單結構的容量.一下菜單 數據在菜單結構數組中的偏移量,有多少個菜單象就有多少個宏定義*/ (2005-08-02, C-C++, 2KB, 334次)

[與小靈通訊的軟體.zip]
手機的通訊,特別是小靈通的通訊,是非常難得的技術,也是很受歡迎的,快下啊! (2005-09-30, Visual C++, 39KB, 324次)

[C16漢字輸入方案.rar]
「C16漢字輸入方案」,是針對小鍵盤設備(如手機、遙控器等)通常為16個基本鍵(「0」到「9」、「*」、「#」、左右鍵、刪除鍵、確認鍵)的情況,充分發掘16個鍵位條件下進行漢字輸入和符號輸入的潛力,使漢字、英文、數字輸入達到盡可能高的效率,是在16鍵的小鍵盤設備進行漢字輸入的優秀方案。 (2005-10-27, C++ Builder, 76KB, 316次)

[CDMA短消息發送程序.zip]
用vc開發的cdma手機模塊收發簡訊的功能,主要部分是串口通信和gb->unicode碼間的轉換。 (2005-12-08, Visual C++, 193KB, 313次)

⑥ 求一個安卓開發小游戲源代碼,臨時交作業用

package com.fiveChess;

import android.app.Activity;
import android.os.Bundle;
import android.view.Display;
import android.view.Menu;
import android.view.MenuItem;
import android.view.Window;
import android.view.WindowManager;

public class MainActivity extends Activity {
GameView gameView = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
Display display = this.getWindowManager().getDefaultDisplay();
gameView = new GameView(this,display.getWidth(),display.getHeight());
setContentView(gameView);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add("重新開始").setIcon(android.R.drawable.ic_menu_myplaces);
menu.add("退出");
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getTitle().equals("重新開始")){
gameView.canPlay = true;
gameView.chess = new int[gameView.row][gameView.col];
gameView.invalidate();
}else if(item.getTitle().equals("退出")){
finish();
}
return super.onOptionsItemSelected(item);
}
}

package com.fiveChess;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.view.MotionEvent;
import android.view.View;

public class GameView extends View {
Context context = null;
int screenWidth,screenHeight;
String message = "";//提示輪到哪個玩家
int row,col; //劃線的行數和列數
int stepLength = 30;//棋盤每格間距
int[][] chess = null;//0代表沒有棋子,1代表是黑棋,2代表白旗
boolean isBlack = true;
boolean canPlay = true;
public GameView(Context context,int screenWidth,int screenHeight) {
super(context);
this.context = context;
this.screenWidth = screenWidth;
this.screenHeight = screenHeight;
this.message = "黑棋先行";
row = (screenHeight-50)/stepLength+1;
col = (screenWidth-10)/stepLength+1;
chess = new int[row][col];

}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
paint.setColor(Color.WHITE);
canvas.drawRect(0, 0, screenWidth, screenHeight, paint);//畫背景
paint.setColor(Color.BLUE);
paint.setTextSize(25);
canvas.drawText(message, (screenWidth-100)/2, 30, paint);//畫最頂層的字
paint.setColor(Color.BLACK);
//畫棋盤
for(int i=0;i<row;i++){
canvas.drawLine(10, 50+i*stepLength, 10+(col-1)*stepLength, 50+i*stepLength, paint);
}
for(int i=0;i<col;i++){
canvas.drawLine(10+i*stepLength,50,10+i*stepLength,50+(row-1)*stepLength, paint);
}

for(int r=0;r<row;r++){
for(int c=0;c<col;c++){
if(chess[r][c] == 1){
paint.setColor(Color.BLACK);
paint.setStyle(Style.FILL);
canvas.drawCircle(10+c*stepLength, 50+r*stepLength, 10, paint);
}else if(chess[r][c] == 2){
//畫白棋
paint.setColor(Color.WHITE);
paint.setStyle(Style.FILL);
canvas.drawCircle(10+c*stepLength, 50+r*stepLength, 10, paint);

paint.setColor(Color.BLACK);
paint.setStyle(Style.STROKE);
canvas.drawCircle(10+c*stepLength, 50+r*stepLength, 10, paint);
}
}
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if(!canPlay){return false;}
float x = event.getX();
float y = event.getY();
int r = Math.round((y-50)/stepLength);
int c = Math.round((x-10)/stepLength);
if(r<0 || r>row-1 || c<0 || c>col-1){return false;}
if(chess[r][c]!=0){return false;}//若有棋子則不再畫棋子了
if(isBlack){
chess[r][c] = 1;
isBlack = false;
message = "輪到白棋";
}else{
chess[r][c] = 2;
isBlack = true;
message = "輪到黑棋";
}
invalidate();
if(judge(r, c,0,1)) return false;
if(judge(r, c,1,0)) return false ;
if(judge(r, c,1,1)) return false;
if(judge(r, c,1,-1)) return false;

return super.onTouchEvent(event);
}
private boolean judge(int r, int c,int x,int y) {//r,c表示行和列,x表示在y方向上的偏移,y表示在x方向上的偏移
int count = 1;
int a = r;
int b = c;
while(r>=0 && r<row && c>=0 && c<col && r+x>=0 && r+x<row && c+y>=0 && c+y<col && chess[r][c] == chess[r+x][c+y]){
count++;
if(y>0){
c++;
}else if(y<0){
c--;
}
if(x>0){
r++;
}else if(x<0){
r--;
}
}
while(a>=0 && a<row && b>=0 && b<col && a-x>=0 && a-x<row && b-y>=0 && b-y<col && chess[a][b] == chess[a-x][b-y]){
count++;
if(y>0){
b--;
}else if(y<0){
b++;
}
if(x>0){
a--;
}else if(x<0){
a++;
}
}
if(count>=5){
String str = "";
if(isBlack){
str = "白棋勝利";
}else{
str = "黑棋勝利";
}
new AlertDialog.Builder(context).setTitle("游戲結束").setMessage(str).setPositiveButton("重新開始", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
chess = new int[row][col];
invalidate();

}
}).setNegativeButton("觀看棋局", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
canPlay = false;

}
}).show();
return true;
}

return false;
}
}
PS:五子棋,無需圖片,直接在程序里畫出來的。注意我發的是兩個文件,一個activity,一個類文件,別把它當成一個文件了

⑦ 求一C++小游戲源代碼簡單點的!!謝謝

#include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b int i,key; int score=0; int gamespeed=32000; struct Food /*食物的結構體*/ { int x; /*食物的橫坐標*/ int y; /*食物的縱坐標*/ int yes; /*食物是否出現的變數*/ }food; struct Snack /*蛇的結構體*/ { int x; int y; int node; /*蛇的節數*/ int direction; /*蛇的方向*/ int life; /*蛇的生命,0活著,1死亡*/ }snake; void Init(void); /*圖形驅動*/ void Close(void); /*關閉游戲函數*/ void DrawK(void); /*畫圖函數*/ void GameOver(void);/*輸出失敗函數*/ void GamePlay(); /*游戲控制函數 主要程序*/ void PrScore(void); /*分數輸出函數*/ DELAY(char ch)/*調節游戲速度*/ { if(ch=='3') { delay(gamespeed); /*delay是延遲函數*/ delay(gamespeed); } else if(ch=='2') { delay(gamespeed); } } Menu()/*游戲開始菜單*/ { char ch; printf("Please choose the gamespeed: "); printf("1-Fast 2-Normal 3-Slow "); printf(" Please Press The numbers.. "); do {ch=getch();} while(ch!='1'&&ch!='2'&&ch!='3'); clrscr(); return(ch); } /*主函數*/ void main(void) { int ch; ch=Menu(); Init(); DrawK(); GamePlay(ch); Close(); } void Init(void) { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\tc"); cleardevice(); } void DrawK(void) { setcolor(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH); for(i=50;i

⑧ 游戲軟體怎麼查看源代碼

游戲都是進行過編譯,加密的無法看到源代碼。如果你想查看的游戲是開源的,可以到游戲的開源網站進行查看。

查看APP應用的源代碼的具體方法步驟如下:

1、首先在電腦內下載並安裝獲取網頁源碼app。

2、然後單擊打開網頁源碼APP並在APP中的輸入框內輸入想要查看的網址,再在界面內找到GO選項單並單擊。

3、單擊後等待APP最後載入3秒就可以成功的獲取APP源代碼並查看了。

Android 系統源代碼多大

是指sdk的源碼,還是android操作系統的源碼,不過都有10G左右,另外sdk的源碼是用git管理的,一次下載後,用git check就可以切換到各個版本。

Android SDK是用於開發Android上JAVA應用程序的,另外發布Android NDK,可以添加一些C語言寫的鏈接庫,至於Linux代碼,可以在Android源代碼中找到(SDK程序中只有編譯好的測試映像)。

應用程序開發用不到Linux代碼(搞嵌入式開發才會用到,而SDK不負責底層開發)。

⑨ 誰知道安卓游戲源碼下載的網站

可以去易查、手游、手機樂園、等網站。進行相對應的機型綁定…就可以下載自己喜歡的游戲! 91里就應該有吧 這位朋友您好你在泡椒網安卓論壇上下載

⑩ 求一個Android小游戲消方塊的源代碼,謝謝了~

兩個以上可以點擊消失??什麼樣的?對對碰,連在一起的,還是連連看那樣的?

熱點內容
絕地求生未來之役比賽為什麼進不去 發布:2023-08-31 22:07:08 瀏覽:1379
dota2位置什麼意思 發布:2023-08-31 22:00:04 瀏覽:819
lol電競是什麼樣子 發布:2023-08-31 21:58:40 瀏覽:1279
絕地求生八倍鏡的那個圓圈怎麼弄 發布:2023-08-31 21:58:31 瀏覽:1358
lol龍龜一個多少金幣 發布:2023-08-31 21:55:07 瀏覽:727
王者如何改游戲內名稱 發布:2023-08-31 21:55:06 瀏覽:1019
游戲主播打廣告是什麼意思 發布:2023-08-31 21:55:06 瀏覽:1699
絕地求生如何免費拿到ss7賽季手冊 發布:2023-08-31 21:52:13 瀏覽:899
pgg是哪個國家的戰隊lol 發布:2023-08-31 21:52:07 瀏覽:775
一個人的時候才發現游戲很沒意思 發布:2023-08-31 21:49:24 瀏覽:1405