نمایش نتایج 1 تا 2 از 2

نام تاپیک: مشکل در بازی توپ

  1. #1

    مشکل در بازی توپ

    سلام ، وقت بخیر خدمت دوستان عزیز
    پرژوه بازی توپ ویژال بسیک رو به زبان C#‎ بازنویسی کردم که متاسفانه با وجود این که هیچ خطایی نداره ولی کار نمیکنه
    اصل سورس به زبان VB6 و بازنویسی به زبان C#‎ رو گذاشتم ، ممنون میشم بررسی و رفع عیب کنید.


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;


    namespace WindowsFormsApplication1
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }


    int keymove, zaman ,result;
    double stepx, stepy, stepzarf;



    private void Form1_KeyUp(object sender, KeyEventArgs e)
    {
    if (e.KeyCode == Keys.Left || e.KeyCode == Keys.Right)
    keymove = 0;


    }


    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
    if (e.KeyCode == Keys.Left)
    keymove = -1;


    if (e.KeyCode == Keys.Right)
    keymove = 1;




    }


    private void Form1_Load(object sender, EventArgs e)
    {
    stepx = 50;
    stepy = -50;
    stepzarf = 100;

    }


    private void TMove_Tick(object sender, EventArgs e)
    {
    zaman = zaman + 1;
    if (zaman >= 100)
    {
    stepx = stepx * 1.01;
    stepy = stepy * 1.01;
    stepzarf = stepzarf * 1.01;
    zaman = 0;
    }




    if ((keymove == -1) && (zarf.X1 > 0) || (keymove == 1) && (zarf.X2 < this.Width - 100))
    {
    zarf.X1 = Convert.ToInt32(zarf.X1 + stepzarf * keymove);
    zarf.X2 = Convert.ToInt32(zarf.X2 + stepzarf * keymove);
    }


    toop.Left = Convert.ToInt32(toop.Left + stepx);
    toop.Top = Convert.ToInt32(toop.Top + stepy);


    if (toop.Top <= 0)
    {
    stepy = -stepy;
    }


    if (toop.Left <= 0 || toop.Left >= (this.Width - toop.Width))
    {
    stepx = -stepx;
    }


    if ((toop.Top + toop.Height) > zarf.Y1)
    {
    if ((toop.Left + toop.Width / 2) > zarf.X1 && (toop.Left + toop.Width / 2) < zarf.X2)
    {
    stepy = -stepy;
    }


    else
    {

    TMove.Enabled = false;
    DialogResult result;
    MessageBox.Show("آیا مایل به ادامه بازی هستید ؟", "!!! Game Over !!!", MessageBoxButtons.OKCancel);

    if ( result == DialogResult.Yes)
    {
    stepx = 50;
    stepy = -50;
    stepzarf = 100;
    keymove = 0;
    toop.Top = 500;
    LScore.Text = "0";
    TMove.Enabled = true;
    }
    if (result == DialogResult.No)
    {
    this.Close();
    }
    }
    }
    }






    }
    }



    سورس اصلی


    Dim StepX, StepY, StepZarf As Double
    Dim KeyMove, Zaman As Integer
    Private Sub CmdReset_Click()
    StepX = 50
    StepY = -50
    StepZarf = 100
    KeyMove = 0
    Toop.Top = 500
    CmdReset.Visible = False
    LScore.Caption = "0"
    TMove.Enabled = True
    End Sub
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = 37 Then
    KeyMove = -1
    End If
    If KeyCode = 39 Then
    KeyMove = 1
    End If
    End Sub
    Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
    If KeyCode = 37 Or KeyCode = 39 Then
    KeyMove = 0
    End If
    End Sub
    Private Sub Form_Load()
    StepX = 50
    StepY = -50
    StepZarf = 100
    End Sub






    Private Sub TMove_Timer()
    Zaman = Zaman + 1
    If Zaman >= 100 Then
    LScore.Caption = LScore.Caption * 1 + 1
    StepX = StepX * 1.01
    StepY = StepY * 1.01
    StepZarf = StepZarf * 1.01
    Zaman = 0
    End If
    If ((KeyMove = -1 And Zarf.X1 > 100) Or (KeyMove = 1 And Zarf.X2 < (Me.Width - 100))) Then
    Zarf.X1 = Zarf.X1 + StepZarf * KeyMove
    Zarf.X2 = Zarf.X2 + StepZarf * KeyMove
    End If
    Toop.Left = Toop.Left + StepX
    Toop.Top = Toop.Top + StepY
    If Toop.Top <= 0 Then
    StepY = -StepY
    End If
    If Toop.Left <= 0 Or Toop.Left >= (Me.Width - Toop.Width) Then
    StepX = -StepX
    End If
    If (Toop.Top + Toop.Height) > Zarf.Y1 Then
    If (Toop.Left + Toop.Width / 2) > Zarf.X1 And (Toop.Left + Toop.Width / 2) < Zarf.X2 Then
    StepY = -StepY
    Else
    CmdReset.Visible = True
    TMove.Enabled = False
    MsgBox (" !!! Game Over !!! ")
    End If
    End If
    End Sub


  2. #2

    نقل قول: مشکل در بازی توپ

    واقعا سوال سختیه ؟

تاپیک های مشابه

  1. مشکل در بازی تتریس
    نوشته شده توسط aryadev در بخش C#‎‎
    پاسخ: 4
    آخرین پست: پنج شنبه 07 مرداد 1395, 14:12 عصر
  2. مشکل در بازی duck game
    نوشته شده توسط mohammad-de در بخش Android Studio
    پاسخ: 5
    آخرین پست: دوشنبه 03 آذر 1393, 21:33 عصر
  3. سوال: مشکل در بازی دوز
    نوشته شده توسط cloner11 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 3
    آخرین پست: سه شنبه 08 بهمن 1392, 10:48 صبح
  4. سوال: مشکل در بازی Tic Tac Toe
    نوشته شده توسط AliRezaPro در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 23 آذر 1390, 23:59 عصر
  5. سوال: مشکل در بازی پینگ پونگ در گرافیک با turbo c
    نوشته شده توسط kasra_9nor در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: دوشنبه 23 فروردین 1389, 17:46 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •