using system;
using system.collections.generic;
using system.drawing;
using system.windows.forms;
namespace 俄羅斯方塊
picturebox pb;
const int w = 10;
const int h = 20;
const int a = 40;
int speed = 400;
int marks = 0;
bool gameoverflag = false;
int[,] p = new int[w, h];
int[,] c = new int[w, h];
int[,] c_old = new int[w, h];
timer timer;
void mainform_load(object sender, eventargs e)
}c = make_diamond(0);
c_old = make_emptydiamond();
timer = new timer();
timer.interval = speed;
timer.tick += new eventhandler(timer_tick);
draw(); }
void timer_tick(object sender, eventargs e)
}marks += lines * lines;
p = clear_fullline();
if(isgameover())
c = make_diamond(0);
c_old = make_emptydiamond();
} else if(isequal(c, move_down()))
else if(!isequal(c, move_down()))
draw();
this.text = "俄羅斯方塊 得分:" + marks.tostring(); }
int[,] make_diamond(int n)
}switch (n)
return c_temp; }
int[,] add_p_c(int[,] c_temp)
}return p_temp; }
int detect_border()
}if(i_min != w)
}for(int i = w - 1; i >= 0; i--)
}if(i_max != -1)
}for(int j = 0; j < h; j++)
}if(j_min != h)
}for(int j = h - 1; j >= 0; j--)
}if(j_max != -1)
}int border = ;//上下左右邊界
return border; }
bool overlap(int[,] c_temp)
}} return bl; }
int[,] make_emptydiamond()
}return c_temp; }
bool isempty(int[,] c_temp)}}
return bl; }
bool isequal(int[,] c1, int[,] c2)
}} return bl; }
int detect_fullline()
for(int j = 0; j < h; j ++)
}} return l; }
int[,] clear_fullline()
flag--;
} }
return p_temp; }
bool isgameover()
程式設計客棧 }
return bl; }
int[,] turn()
else if(r - l == 3)
else if(d - u == 3)
else if(r - l == 2)
else if(d - u == 2)
}if(overlap(c_temp) || isempty(c_temp))
return c_temp; }
int[,] move_down()
}} if(overlap(c_temp) || isempty(c_temp))
return c_temp; }
int[,] move_left()
}} if(overlap(c_temp) || isempty(c_temp))
return c_temp; }
int[,] move_right()
}} if(overlap(c_temp) || isempty(c_temp))
return c_temp; }
void draw()
for(int j = 1; j < h; j++)
for(int i = 0; i < w; i++)
}} pb.image = bmp;
gc.collect(); }
void mainform_keydown(object sender, keyeventargs e)
switch (e.keydata)
draw(); }
void mainform_keyup(object sender, keyeventargs e) }
}}很短點的一段**,實現了俄羅斯方塊的基本功能,可以很方便的修改和擴充套件。
本文標題: c#實現俄羅斯方塊基本功能
本文位址:
C 實現俄羅斯方塊
c 實現俄羅斯方塊 一 實驗介紹 1.1 實驗內容 本節實驗我們進行設計俄羅斯方塊前的思路分析,以及介紹ncurses 庫的使用方法。1.2 實驗知識點 c 程式設計基礎 ncurses 庫的使用 俄羅斯方塊邏輯設計 1.3 實驗環境 xfce 終端 g 編譯器 ncurses 庫 1.4 適合人群...
C 俄羅斯方塊
因為要得找工作了,不得不寫些文章讓hr更多的了解到我,同時能幫到別的同學也是好的。因為接觸unity時間不是特別久,所以這裡先帖出早期開發的c 遊戲,然後再帖unity遊戲。另外提醒,我的所有作品都是自己開發的,絕無抄襲 程式 和程式設計思想絕沒超抄過別人的 最多也就是高仿別人的遊戲 貪吃蛇算嗎?俄...
俄羅斯方塊 C
include include include include includeusing namespace std define a1 0 a代表長條型,b為方塊,c為l型,d為閃電型 實在無法描述那個形狀 define a2 1 define b 2 define c11 3 define c1...