हाल ही में मैं खेल की तरह एक अंतरिक्ष आक्रमणकारियों पर काम कर रहा है की तरह 2 डी अंतरिक्ष आक्रमणकारियों में आग, मुझे मेरे प्रोग्रामिंग कौशल को बढ़ावा देने में मदद करने के लिए नहीं मिल सकता है। मैं कुछ समस्याओं में गिर गया है। मैं कुछ दिनों के लिए शोध कर रहा हूं, कि आप keyUp पर लेजर आग बनाने के बारे में कैसे जाएंगे।लेजर खेल
यह अब तक मेरी प्रयास है; मैं लेजर आग करने के लिए मिल सकता है, लेकिन यह मेरे ठोकर खाई है क्यों लेजर ऊपर जा रहा है पर ले जाने के नहीं है ...
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;
using System.IO;
namespace SpaceInvaders
{
public partial class Form1 : Form
{
public int spriteX = 226;
public int spriteY = 383;
bool bulletFire = false;
int fireTimer = 8;
int laserFired;
public Form1()
{
InitializeComponent();
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
public void laserFire()
{
//on laser fire i wont the bulle to move up while bullet timer is enabled
//moving up slowly with set intervals
while (bulletTimer.Enabled == true)
{
PictureBox laser = new PictureBox();
laser.BackColor = Color.Chartreuse;
laser.Width = 5;
laser.Height = 30;
laserFired = spriteY;
laserFired = laserFired - 10;
this.Controls.Add(laser);
laser.Location = new Point(spriteX, laserFired);
}
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
//Fire bullet
if (e.KeyCode == Keys.Up)
{
bulletFire = true;
if (bulletFire == true)
{
laserFire();
bulletTimer.Enabled = true;
}
}
//Controls Right movement
if (spriteX <448)
{
if (e.KeyCode == Keys.Right)
{
spriteX = spriteX + 20;
}
}
//Controls Left Movement
if (spriteX > 0)
{
if (e.KeyCode == Keys.Left)
{
spriteX = spriteX - 20;
}
}
//Points sprite to new location
pctSprite.Location = new Point(spriteX, spriteY);
}
private void bulletTimer_Tick(object sender, EventArgs e)
{
if (fireTimer == 0)
{
bulletTimer.Enabled = false;
}
else { fireTimer = fireTimer - 1; }
}
}
}
मदद या सलाह बहुत सराहना की जाएगी धन्यवाद।
मैं (माइक्रोसॉफ्ट से) यदि आप सी # में खेल विकास के बारे में उत्सुक हैं XNA ढांचे पर गौर चाहते हैं। अगर कुछ भी आपको एक अच्छा विचार देगा कि आप अपना कोड कैसे सेट अप करें, भले ही आप एक्सएनए का उपयोग नहीं करना चाहते हैं –