Игровая система "Тетрис"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

LeftPanel.Visible = true;

LeftPanel.Enabled = true;

RightPanel.Visible = true;

RightPanel.Enabled = true;

label1.Text = "0";

label2.Text = "0";

label3.Text = "0";

label4.Text = "0";

}button4_Click(object sender, EventArgs e)

{(debug.Enabled)

debug.Enabled = false;

debug.Enabled = true;

}listView1_ColumnClick(object sender, ColumnClickEventArgs e)

{

// Create an instance of the ColHeader class.clickedCol = (ColHeader)this.listView1.Columns[e.Column];

// Set the ascending property to sort in the opposite order.

clickedCol.ascending = !clickedCol.ascending;

// Get the number of items in the list.numItems = this.listView1.Items.Count;

// Turn off display while data is repoplulated..listView1.BeginUpdate();

// Populate an ArrayList with a SortWrapper of each list item.SortArray = newArrayList();(int i = 0; i < numItems; i++)

{

SortArray.Add(newSortWrapper(this.listView1.Items[i], e.Column));

}

// Sort the elements in the ArrayList using a new instance of the SortComparer

// class. The parameters are the starting index, the length of the range to sort,

// and the IComparer implementation to use for comparing elements. Note that

// the IComparer implementation (SortComparer) requires the sort

// direction for its constructor; true if ascending, othwise false.

SortArray.Sort(0, SortArray.Count, newSortWrapper.SortComparer(clickedCol.ascending));

// Clear the list, and repopulate with the sorted items..listView1.Items.Clear();(int i = 0; i < numItems; i++).listView1.Items.Add(((SortWrapper)SortArray[i]).sortItem);

// Turn display back on..listView1.EndUpdate();

}MainWindow_Load(object sender, EventArgs e)

{

}MainWindow_Load_1(object sender, EventArgs e)

{

}RightPanel_Paint(object sender, PaintEventArgs e)

{

}button3_Click(object sender, EventArgs e)

{

MF = (MainWindow)Form.ActiveForm;

PanelPad.Visible = true;

PanelMenu.Visible = false;

panel2.Enabled = true;

panel2.Visible = true;

panel3.Visible = true;

panel3.Enabled = true;

game = "Tanks";

}checkBox3_CheckedChanged(object sender, EventArgs e)

{(checkBox1.Checked)

{

Tanks_.thr.Resume();

thrTime.Resume();

label5.Visible = false;

checkBox2.Enabled = true;

}

{

Tanks_.thr.Suspend();

thrTime.Suspend();

label5.Visible = true;

checkBox2.Enabled = false;

}

}groupBox1_Enter(object sender, EventArgs e)

{

}richTextBox1_TextChanged(object sender, EventArgs e)

{

}time()

{time = 0;(true)

{

updateT();.Sleep(1000);

time++;

Tanks_.Tank_.score += 40;

Tanks_.Tank_1.score += 40;(time % 60 == 0)

{

label11.Text = (time / 60).ToString() + ":" + "0";

}

{

label11.Text = (time / 60).ToString() + ":" + (time % 60).ToString();

}

}

}gOver(string name)

{

Tanks_.ClearTable();

checkBox2.Checked = false;.Show("Танк " + name + " был убит!", "GameOver", MessageBoxButtons.OK, MessageBoxIcon.Information);

}updateT()

{(Tanks_ == null);.Text = Tanks_.Tank_.health.ToString();

label12.Text = Tanks_.Tank_1.health.ToString();

label7.Text = Tanks_.Tank_.cheat.ToString();

label8.Text = Tanks_.Tank_1.cheat.ToString();

label9.Text = Tanks_.Tank_.score.ToString();

label10.Text = Tanks_.Tank_1.score.ToString();();

}button5_Click(object sender, EventArgs e)

{(Tanks_.thr != null)(Tanks_.thr.ThreadState == System.Threading.ThreadState.Suspended)

{

Tanks_.thr.Resume();

Tanks_.thr.Abort();

thrTime.Resume();

thrTime.Abort();

}

{

Tanks_.thr.Abort();

thrTime.Abort();

}

game = "Tanks";

checkBox2.Enabled = true;

checkBox2.Checked = false;

checkBox3.Checked = false;.Visible = false;

panel2.Enabled = false;

panel3.Visible = false;

panel3.Enabled = false;

PanelPad.Visible = false;

PanelMenu.Visible = true;

}Pause_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)

{(e.KeyCode)

{.Left:.Right:.Down:.Space:.Up:.LShiftKey:.Shift:.ShiftKey:.RShiftKey:.Alt:.ControlKey:

e.IsInputKey = true;;

}

}button1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)

{(e.KeyCode)

{.Left:.Right:.Down:.Space:.Up:.LShiftKey:.Shift:.ShiftKey:.RShiftKey:.Alt:.ControlKey:

e.IsInputKey = true;;

}

}checkBox2_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)

{(e.KeyCode)

{.Left:.Right:.Down:.Space:.Up:.LShiftKey:.Shift:.ShiftKey:.RShiftKey:.Alt:.ControlKey:

e.IsInputKey = true;;

}

}checkBox3_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)

{(e.KeyCode)

{.Left:.Right:.Down:.Space:.Up:.LShiftKey:.Shift:.ShiftKey:.RShiftKey:.Alt:.ControlKey:

e.IsInputKey = true;;

}

}button5_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)

{(e.KeyCode)

{.Left:.Right:.Down:.Space:.Up:.LShiftKey:.Shift:.ShiftKey:.RShiftKey:.Alt:.ControlKey:

e.IsInputKey = true;;

}

}startTanks(object sender, EventArgs e)

{(Tanks_ == null)

{

checkBox2.Text = "Stop";

Tanks_ = newTanks();

Tanks_.Start();

thrTime = newThread(newThreadStart(time));

thrTime.Start();

richTextBox1.Enabled = false;

richTextBox2.Enabled = false;

Tanks_.Tank_1.name = richTextBox2.Text;

Tanks_.Tank_.name = richTextBox1.Text;

}

{

checkBox2.Text = "Start";

Tanks_.thr.Abort();

Tanks_.ClearTable();

Tanks_ = null;

thrTime.Abort();

label11.Text = "0";

richTextBox1.Enabled = true;

richTextBox2.Enabled = true;

}

}

}

{sortItem;sortColumn;

// A SortWrapper requires the item and the index of the clicked column.SortWrapper(ListViewItem Item, int iColumn)

{

sortItem = Item;

sortColumn = iColumn;

}

// Text property for getting the text of an item.Text

{

{sortItem.SubItems[sortColumn].Text;

}

}

// Implementation of the IComparer

// interface for sorting ArrayList items.: IComparer

{ascending;

// Constructor requires the sort order;

// true if ascending, otherwise descending.SortComparer(bool asc)

{.ascending = asc;

}

// Implemnentation of the IComparer:Compare

// method for comparing two objects.Compare(object x, object y)

{xItem = (SortWrapper)x;yItem = (SortWrapper)y;xText = xItem.sortItem.SubItems[xItem.sortColumn].Text;yText = yItem.sortItem.SubItems[yItem.sortColumn].Text;xText.CompareTo(yText) * (this.ascending ? 1 : -1);

}

}

}: ColumnHeader

{ascending;ColHeader(string text, int width, HorizontalAlignment align, bool asc)

{.Text = text;.Width = width;.TextAlign = align;.ascending = asc;

}

}

}

 

 

Заключение

 

В результате данной работы была создана программа, для игры в гонки и стройку на основе игровой системы тетрис. Программа выполненна в современной эргономике и будет интересна разным вовзрастным категориям. Есть возможность на базе этой программы разрабатывать дополнительные игры.

Поддерживаемые операционный системы:

Windows 98, 2000, XP, Vista, 7 (x86 или x86_64)

 

 

 

Список литературы

 

.Документация MSDNна

.C# в подлиннике. Наиболее полное руководство Х. Дейтел. Санк-Петербург БХВ-Петербург 2006