new class Alien

global restruct ALL!!
This commit is contained in:
2010-02-03 17:18:26 +03:00
parent 758cfeb967
commit 4ad7d83625
12 changed files with 619 additions and 273 deletions

View File

@@ -3,18 +3,18 @@
adpainter::adpainter(int width, int height, int adpcellsize)
{
QString str;
QPixmap tmpAlPixmap;
int i=1;
cellsize = adpcellsize;
buff = new QPixmap(width,height);
background = new QPixmap(width,height);
pen = new QPen();
brush = new QBrush();
QString str;
QPixmap tmpAlPixmap;
int i=1;
str.setNum(i);
while (i != 0) {
str.setNum(i);
tmpAlPixmap.load("./images/Aliens/Al_00_" + str + ".png");
tmpAlPixmap.load(":/aliens/images/Aliens/Al_00_" + str + ".png");
//qDebug() << tmpAlPixmap.isNull();
if (!tmpAlPixmap.isNull()) {
AlienPix.push_back(tmpAlPixmap);
@@ -57,7 +57,7 @@ void adpainter::drawgrid()
}
void adpainter::drawAliens(QVector<QPointF> path, FPVector * position)
void adpainter::drawAliens(QVector<QPointF> path, FPVector position)
{
float tmpdx,tmpdy,arctg,tmpdx1,tmpdy1;
//unsigned char dd[4];

View File

@@ -28,7 +28,7 @@ public:
void clearcell(QPoint pnt);
void clear();
QPixmap * getPixmap();
void drawAliens(QVector<QPointF> path, FPVector * position);
void drawAliens(QVector<QPointF> path, FPVector position);
int AnimAlien, StepAlien;
private:
QPixmap * buff;

255
alien.cpp Normal file
View File

@@ -0,0 +1,255 @@
#include "alien.h"
Alien::Alien()
{
}
bool Alien::CreatePath()
{
for (int i = 0; i < data->size.width(); i++)
{
for (int j = 0; j < data->size.height(); j++)
{
if (TmpCells[i][j] < 0 ) data->Cells[i][j] = -1;
else TmpCells[i][j] = 0;
}
}
QPointF tp;
QPoint start;
QVector<QPointF> tmpPath;
PathIndex = 1;
start.setX(Position.pnt.x()/data->cellsize);
start.setY(Position.pnt.y()/data->cellsize);
tmpPath = InvWaveTrace(data->finish,WaveTrace(start,data->finish));
if (!tmpPath.isEmpty())
{
for (int j=0; j<4; j++)
{
path.clear();
tp = tmpPath[0];
path.push_back(tp);
for (int i = 0; i < al->path.size() - 1; i++)
{
tp.setX((tmpPath[i].x() + tmpPath[i + 1].x()) / 2.0);
tp.setY((tmpPath[i].y() + tmpPath[i + 1].y()) / 2.0);
path.push_back(tp);
}
tp = tmpPath[tmpPath.size() - 1];
path.push_back(tp);
tmpPath = path;
}
tmpPath.clear();
if (path.size() > 10)
{
path.remove(1);
path.remove(2);
path.remove(path.size()-2);
path.remove(path.size()-3);
}
return true;
}
return false;
}
void Alien::update()
{
}
/*bool Aliens::PathIntersect(Alien* Al, Rectangle rect)
{
//PathIntersect = False
for (int i = Al->PathIndex; i<=Al->path.size(); i++) // To UBound(Al.path(), 1)
if (Al->path[i].x + 0.5 >= rect.x0 - 1 && Al->path[i].x + 0.5 <= rect.x1 + 1)
if (Al->path[i].y + 0.5 >= rect.y0 - 1 && Al->path[i].y + 0.5 <= rect.y1 + 1)
return true; //PathIntersect = True //Exit Function
return false;
}*/
int Alien::WaveTrace(QPoint start, QPoint finish)
{
bool stop = false;
int step = 2;
QPoint cp, tp;
QRect fr(0, 0, data->size.width(), data->size.height());
QVector<QPoint> tmpp, curp;
cp = start;
curp.push_back(cp);
TmpCells[cp.x()][cp.y()] = 1;
qDebug() << "trace";
while (!stop) {
tmpp = curp;
curp.clear();
stop = true;
for (int i = 0; i < tmpp.size(); i++) {
cp = tmpp[i];
if (cp == finish) {
TmpCells[cp.x()][cp.y()] = step;
qDebug() << "true";
return step;
}
tp.setX(cp.x() - 1);
tp.setY(cp.y());
if (fr.contains(tp) && TmpCells[tp.x()][tp.y()] == 0) {
TmpCells[tp.x()][tp.y()] = step;
curp.push_back(tp);
stop = false;
}
tp.setX(cp.x() + 1);
if (fr.contains(tp) && TmpCells[tp.x()][tp.y()] == 0) {
TmpCells[tp.x()][tp.y()] = step;
curp.push_back(tp);
stop = false;
}
tp.setX(cp.x());
tp.setY(cp.y() - 1);
if (fr.contains(tp) && TmpCells[tp.x()][tp.y()] == 0) {
TmpCells[tp.x()][tp.y()] = step;
curp.push_back(tp);
stop = false;
}
tp.setY(cp.y() + 1);
if (fr.contains(tp) && TmpCells[tp.x()][tp.y()] == 0) {
TmpCells[tp.x()][tp.y()] = step;
curp.push_back(tp);
stop = false;
}
}
step++;
}
qDebug() << "false";
return -1;
}
QVector<QPoint> Alien::InvWaveTrace(QPoint finish, int cnt)
{
QPoint wp, Ppnt;
QVector<QPoint> alpath;
int Ind, c, xpp, ypp, xnn, ynn;
unsigned char chk;
Ppnt = wp = finish;
xnn=0;
xpp=0;
ynn=0;
ypp=0;
cnt--;
alpath.push_front(Ppnt);
while (cnt > 1)
{
cnt--;
chk = 0;
Ind = 0;
c = 0;
if (wp.x() - 1 >= 0 && TmpCells[wp.x()-1][wp.y()] == cnt)
{
chk = chk | 0x01;
c++;
}
if (wp.x() + 1 < data->size.width() && TmpCells[wp.x()+1][wp.y()] == cnt)
{
chk = chk | 0x02;
c++;
}
if (wp.y() - 1 >= 0 && TmpCells[wp.x()][wp.y()-1] == cnt)
{
chk = chk | 0x04;
c++;
}
if (wp.y() + 1 < data->size.height() && TmpCells[wp.x()][wp.y()+1] == cnt)
{
chk = chk | 0x08;
c++;
}
if (c == 0 || chk == 0) qDebug() << "ERROR!!!";
if (c > 1)
{
if ((chk & 0x01)==0x01 && (chk & 0x04)==0x04)
{
if (xnn <= ynn && Ind == 0){
wp.rx()--;
xnn++;
if (xnn == ynn) xnn++;
Ind = 1;
} else if (Ind == 0) {
wp.ry()--;
ynn++;
ynn++;
Ind = 1;
}
}
if ((chk & 0x02)==0x02 && (chk & 0x04)==0x04)
{
if (xpp <= ynn && Ind == 0){
wp.rx()++;
xpp++;
if (xpp == ynn) xpp++;
Ind = 1;
} else if (Ind == 0) {
wp.ry()--;
ynn++;
ynn++;
Ind = 1;
}
}
if ((chk & 0x01)==0x01 && (chk & 0x08)==0x08)
{
if (xnn <= ypp && Ind == 0){
wp.rx()--;
xnn++;
if (xnn == ypp) xnn++;
Ind = 1;
} else if (Ind == 0) {
wp.ry()++;
ypp++;
ypp++;
Ind = 1;
}
}
if ((chk & 0x02)==0x02 && (chk & 0x08)==0x08)
{
if (xpp <= ypp && Ind == 0){
wp.rx()++;
xpp++;
if (xpp == ypp) xpp++;
Ind = 1;
} else if (Ind == 0) {
wp.ry()++;
ypp++;
ypp++;
Ind = 1;
}
}
}
if (c == 1 || Ind == 0)
{
xnn=0;
xpp=0;
ynn=0;
ypp=0;
if ((chk & 0x01)==0x01) {
wp.rx()--;
xnn++;
}
else if ((chk & 0x02)==0x02) {
wp.rx()++;
xpp++;
}
else if ((chk & 0x04)==0x04) {
wp.ry()--;
ynn++;
}
else if ((chk & 0x08)==0x08) {
wp.ry()++;
ypp++;
}
}
Ppnt = wp;
alpath.push_front(Ppnt);
}
return alpath;
}

41
alien.h Normal file
View File

@@ -0,0 +1,41 @@
#ifndef ALIEN_H
#define ALIEN_H
#include "basestruct.h"
class Alien
{
public:
Alien();
bool RecreatePath();
bool testTrace(QPoint start, QPoint finish);
void setPos(FPVector pos);
void update();
FPVector pos() const {return Position;}
QVector<QPointF> AlienPath() const {return path;}
private:
int ** TmpCells;
GameData * data;
FPVector Position;
int PicType;
//int FlX;
//int FlY;
//int Armor;
//int Level;
//int Money;
int PathIndex;
int PicIndex;
//int PicIndl;
//int MaxFrame;
//float Health;
float Speed;
float PicFrame;
//float PicI;
//float Regeneration;
QVector<QPointF> path;
int WaveTrace(QPoint start, QPoint finish);
QVector<QPoint> InvWaveTrace(QPoint finish, int cnt);
};
#endif // ALIEN_H

View File

@@ -12,7 +12,8 @@ SOURCES += main.cpp \
udpsender.cpp \
towers.cpp \
map.cpp \
game.cpp
game.cpp \
alien.cpp
HEADERS += mainwindow.h \
adpainter.h \
aliens.h \
@@ -20,5 +21,7 @@ HEADERS += mainwindow.h \
udpsender.h \
towers.h \
map.h \
game.h
game.h \
alien.h
FORMS += mainwindow.ui
RESOURCES += images.qrc

View File

@@ -1,302 +1,347 @@
<!DOCTYPE QtCreatorProject>
<qtcreator>
<data>
<variable>RunConfiguration0-BaseEnvironmentBase</variable>
<value type="int">2</value>
</data>
<data>
<variable>RunConfiguration0-CommandLineArguments</variable>
<valuelist type="QVariantList" />
<valuelist type="QVariantList"/>
</data>
<data>
<variable>RunConfiguration0-ProFile</variable>
<value type="QString" >wavetrace.pro</value>
<value type="QString">wavetrace.pro</value>
</data>
<data>
<variable>RunConfiguration0-RunConfiguration.name</variable>
<value type="QString" >aliendefender</value>
<value type="QString">aliendefender</value>
</data>
<data>
<variable>RunConfiguration0-UseDyldImageSuffix</variable>
<value type="bool" >false</value>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration0-UseTerminal</variable>
<value type="bool" >false</value>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration0-UserEnvironmentChanges</variable>
<valuelist type="QVariantList" />
<valuelist type="QVariantList"/>
</data>
<data>
<variable>RunConfiguration0-UserSetName</variable>
<value type="bool" >true</value>
<value type="bool">true</value>
</data>
<data>
<variable>RunConfiguration0-UserSetWorkingDirectory</variable>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration0-UserWorkingDirectory</variable>
<value type="QString"></value>
</data>
<data>
<variable>RunConfiguration0-type</variable>
<value type="QString" >Qt4ProjectManager.Qt4RunConfiguration</value>
<value type="QString">Qt4ProjectManager.Qt4RunConfiguration</value>
</data>
<data>
<variable>RunConfiguration1-BaseEnvironmentBase</variable>
<value type="int">2</value>
</data>
<data>
<variable>RunConfiguration1-CommandLineArguments</variable>
<valuelist type="QVariantList" />
<valuelist type="QVariantList"/>
</data>
<data>
<variable>RunConfiguration1-ProFile</variable>
<value type="QString" >aliendefender.pro</value>
<value type="QString">aliendefender.pro</value>
</data>
<data>
<variable>RunConfiguration1-RunConfiguration.name</variable>
<value type="QString" >aliendefender</value>
<value type="QString">aliendefender</value>
</data>
<data>
<variable>RunConfiguration1-UseDyldImageSuffix</variable>
<value type="bool" >false</value>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration1-UseTerminal</variable>
<value type="bool" >false</value>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration1-UserEnvironmentChanges</variable>
<valuelist type="QVariantList" />
<valuelist type="QVariantList"/>
</data>
<data>
<variable>RunConfiguration1-UserSetName</variable>
<value type="bool" >false</value>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration1-UserSetWorkingDirectory</variable>
<value type="bool">false</value>
</data>
<data>
<variable>RunConfiguration1-UserWorkingDirectory</variable>
<value type="QString"></value>
</data>
<data>
<variable>RunConfiguration1-type</variable>
<value type="QString" >Qt4ProjectManager.Qt4RunConfiguration</value>
<value type="QString">Qt4ProjectManager.Qt4RunConfiguration</value>
</data>
<data>
<variable>activeRunConfiguration</variable>
<value type="int" >1</value>
<value type="int">1</value>
</data>
<data>
<variable>activebuildconfiguration</variable>
<value type="QString" >Debug</value>
<value type="QString">Debug</value>
</data>
<data>
<variable>buildConfiguration-Debug</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Debug</value>
<value key="QtVersionId" type="int" >0</value>
<value key="addQDumper" type="" ></value>
<value key="buildDirectory" type="QString" >/home/andrey/documents/sm11/Alien Defender/ad</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value>
<value key="QtVersionId" type="int">0</value>
<value key="ToolChain" type="int">2</value>
<value key="addQDumper" type=""></value>
<value key="buildConfiguration" type="int">2</value>
<value key="buildDirectory" type="QString">/home/andrey/documents/sm11/Alien Defender/ad</value>
</valuemap>
</data>
<data>
<variable>buildConfiguration-Release</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Release</value>
<value key="QtVersionId" type="int" >0</value>
<value key="addQDumper" type="" ></value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value>
<value key="QtVersionId" type="int">0</value>
<value key="ToolChain" type="int">2</value>
<value key="addQDumper" type=""></value>
<value key="buildConfiguration" type="int">0</value>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Debug-buildstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList" >
<value type="QString" >DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-S5Q8zKlbhY,guid=6ef5dd4aeeaf9cb3055a39934b629f00</value>
<value type="QString" >DESKTOP_SESSION=gnome</value>
<value type="QString" >DESKTOP_STARTUP_ID=</value>
<value type="QString" >DISPLAY=:0.0</value>
<value type="QString" >GDMSESSION=gnome</value>
<value type="QString" >GDM_KEYBOARD_LAYOUT=us</value>
<value type="QString" >GDM_LANG=ru_RU.UTF-8</value>
<value type="QString" >GNOME_DESKTOP_SESSION_ID=this-is-deprecated</value>
<value type="QString" >GNOME_KEYRING_SOCKET=/tmp/keyring-116Pb7/socket</value>
<value type="QString" >GTK_MODULES=canberra-gtk-module</value>
<value type="QString" >GTK_RC_FILES=/etc/gtk/gtkrc:/home/andrey/.gtkrc-1.2-gnome2</value>
<value type="QString" >HOME=/home/andrey</value>
<value type="QString" >LANG=ru_RU.UTF-8</value>
<value type="QString" >LD_LIBRARY_PATH=/usr/lib/qtcreator:</value>
<value type="QString" >LOGNAME=andrey</value>
<value type="QString" >ORBIT_SOCKETDIR=/tmp/orbit-andrey</value>
<value type="QString" >PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games</value>
<value type="QString" >PWD=/home/andrey</value>
<value type="QString" >QTDIR=/usr</value>
<value type="QString" >SESSION_MANAGER=local/buull-eeePC:@/tmp/.ICE-unix/1205,unix/buull-eeePC:/tmp/.ICE-unix/1205</value>
<value type="QString" >SHELL=/bin/bash</value>
<value type="QString" >SPEECHD_PORT=7560</value>
<value type="QString" >SSH_AGENT_PID=1318</value>
<value type="QString" >SSH_AUTH_SOCK=/tmp/keyring-116Pb7/socket.ssh</value>
<value type="QString" >USER=andrey</value>
<value type="QString" >USERNAME=andrey</value>
<value type="QString" >XAUTHORITY=/var/run/gdm/auth-for-andrey-9AQSnh/database</value>
<value type="QString" >XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/</value>
<value type="QString" >XDG_SESSION_COOKIE=f0649decca52f2beb55c9ea74ad1d028-1264754424.556816-274237329</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList">
<value type="QString">ALLUSERSPROFILE=C:\Documents and Settings\All Users</value>
<value type="QString">APPDATA=C:\Documents and Settings\Andrey\Application Data</value>
<value type="QString">COMMONPROGRAMFILES=C:\Program Files\Common Files</value>
<value type="QString">COMPUTERNAME=COMP</value>
<value type="QString">COMSPEC=C:\WINDOWS\system32\cmd.exe</value>
<value type="QString">FP_NO_HOST_CHECK=NO</value>
<value type="QString">HOMEDRIVE=C:</value>
<value type="QString">HOMEPATH=\Documents and Settings\Andrey</value>
<value type="QString">INCLUDE=C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include</value>
<value type="QString">LIB=C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib</value>
<value type="QString">LOGONSERVER=\\COMP</value>
<value type="QString">MSDEVDIR=C:\Program Files\Microsoft Visual Studio\Common\MSDev98</value>
<value type="QString">NUMBER_OF_PROCESSORS=2</value>
<value type="QString">OS=Windows_NT</value>
<value type="QString">PATH=D:\Qt\2010.01\mingw\bin;D:\Qt\2010.01\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\JavaFX\javafx-sdk1.2\bin;C:\Program Files\JavaFX\javafx-sdk1.2\emulator\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\IVI Foundation\VISA\WinNT\Bin;C:\Program Files\Borland\Delphi7\Bin;C:\Program Files\Borland\Delphi7\Projects\Bpl;C:\Program Files\Git\cmd;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin</value>
<value type="QString">PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH</value>
<value type="QString">PROCESSOR_ARCHITECTURE=x86</value>
<value type="QString">PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 6, GenuineIntel</value>
<value type="QString">PROCESSOR_LEVEL=6</value>
<value type="QString">PROCESSOR_REVISION=1706</value>
<value type="QString">PROGRAMFILES=C:\Program Files</value>
<value type="QString">QTDIR=D:/Qt/2010.01/qt</value>
<value type="QString">SESSIONNAME=Console</value>
<value type="QString">SYSTEMDRIVE=C:</value>
<value type="QString">SYSTEMROOT=C:\WINDOWS</value>
<value type="QString">TEMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">TMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">USERDOMAIN=COMP</value>
<value type="QString">USERNAME=Andrey</value>
<value type="QString">USERPROFILE=C:\Documents and Settings\Andrey</value>
<value type="QString">VS90COMNTOOLS=D:\Programming\Microsoft Visual Studio 9.0\Common7\Tools\</value>
<value type="QString">VXIPNPPATH=C:\Program Files\IVI Foundation\VISA\</value>
<value type="QString">WINDIR=C:\WINDOWS</value>
</valuelist>
<valuelist key="abstractProcess.arguments" type="QVariantList" >
<value type="QString" >/home/andrey/documents/sm11/Alien Defender/ad/aliendefender.pro</value>
<value type="QString" >-spec</value>
<value type="QString" >/usr/share/qt4/mkspecs/linux-g++</value>
<value type="QString" >-r</value>
<value type="QString" >CONFIG+=debug</value>
<value type="QString" >-Wall</value>
<valuelist key="abstractProcess.arguments" type="QVariantList">
<value type="QString">C:/aliendefender/aliendefender.pro</value>
<value type="QString">-spec</value>
<value type="QString">win32-g++</value>
<value type="QString">-r</value>
<value type="QString">-Wall</value>
</valuelist>
<value key="abstractProcess.command" type="QString" >/usr/bin/qmake-qt4</value>
<value key="abstractProcess.enabled" type="bool" >false</value>
<value key="abstractProcess.workingDirectory" type="QString" >/home/andrey/documents/sm11/Alien Defender/ad</value>
<value key="buildConfiguration" type="int" >2</value>
<valuelist key="qmakeArgs" type="QVariantList" >
<value type="QString" >-Wall</value>
<value key="abstractProcess.command" type="QString">d:/qt/2010.01/qt/bin/qmake.exe</value>
<value key="abstractProcess.enabled" type="bool">true</value>
<value key="abstractProcess.workingDirectory" type="QString">C:/aliendefender</value>
<value key="buildConfiguration" type=""></value>
<valuelist key="qmakeArgs" type="QVariantList">
<value type="QString">-Wall</value>
</valuelist>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Debug-buildstep1</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList" >
<value type="QString" >DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-S5Q8zKlbhY,guid=6ef5dd4aeeaf9cb3055a39934b629f00</value>
<value type="QString" >DESKTOP_SESSION=gnome</value>
<value type="QString" >DESKTOP_STARTUP_ID=</value>
<value type="QString" >DISPLAY=:0.0</value>
<value type="QString" >GDMSESSION=gnome</value>
<value type="QString" >GDM_KEYBOARD_LAYOUT=us</value>
<value type="QString" >GDM_LANG=ru_RU.UTF-8</value>
<value type="QString" >GNOME_DESKTOP_SESSION_ID=this-is-deprecated</value>
<value type="QString" >GNOME_KEYRING_SOCKET=/tmp/keyring-116Pb7/socket</value>
<value type="QString" >GTK_MODULES=canberra-gtk-module</value>
<value type="QString" >GTK_RC_FILES=/etc/gtk/gtkrc:/home/andrey/.gtkrc-1.2-gnome2</value>
<value type="QString" >HOME=/home/andrey</value>
<value type="QString" >LANG=ru_RU.UTF-8</value>
<value type="QString" >LD_LIBRARY_PATH=/usr/lib/qtcreator:</value>
<value type="QString" >LOGNAME=andrey</value>
<value type="QString" >ORBIT_SOCKETDIR=/tmp/orbit-andrey</value>
<value type="QString" >PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games</value>
<value type="QString" >PWD=/home/andrey</value>
<value type="QString" >QTDIR=/usr</value>
<value type="QString" >SESSION_MANAGER=local/buull-eeePC:@/tmp/.ICE-unix/1205,unix/buull-eeePC:/tmp/.ICE-unix/1205</value>
<value type="QString" >SHELL=/bin/bash</value>
<value type="QString" >SPEECHD_PORT=7560</value>
<value type="QString" >SSH_AGENT_PID=1318</value>
<value type="QString" >SSH_AUTH_SOCK=/tmp/keyring-116Pb7/socket.ssh</value>
<value type="QString" >USER=andrey</value>
<value type="QString" >USERNAME=andrey</value>
<value type="QString" >XAUTHORITY=/var/run/gdm/auth-for-andrey-9AQSnh/database</value>
<value type="QString" >XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/</value>
<value type="QString" >XDG_SESSION_COOKIE=f0649decca52f2beb55c9ea74ad1d028-1264754424.556816-274237329</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList">
<value type="QString">ALLUSERSPROFILE=C:\Documents and Settings\All Users</value>
<value type="QString">APPDATA=C:\Documents and Settings\Andrey\Application Data</value>
<value type="QString">COMMONPROGRAMFILES=C:\Program Files\Common Files</value>
<value type="QString">COMPUTERNAME=COMP</value>
<value type="QString">COMSPEC=C:\WINDOWS\system32\cmd.exe</value>
<value type="QString">FP_NO_HOST_CHECK=NO</value>
<value type="QString">HOMEDRIVE=C:</value>
<value type="QString">HOMEPATH=\Documents and Settings\Andrey</value>
<value type="QString">INCLUDE=C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include</value>
<value type="QString">LIB=C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib</value>
<value type="QString">LOGONSERVER=\\COMP</value>
<value type="QString">MSDEVDIR=C:\Program Files\Microsoft Visual Studio\Common\MSDev98</value>
<value type="QString">NUMBER_OF_PROCESSORS=2</value>
<value type="QString">OS=Windows_NT</value>
<value type="QString">PATH=D:\Qt\2010.01\mingw\bin;D:\Qt\2010.01\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\JavaFX\javafx-sdk1.2\bin;C:\Program Files\JavaFX\javafx-sdk1.2\emulator\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\IVI Foundation\VISA\WinNT\Bin;C:\Program Files\Borland\Delphi7\Bin;C:\Program Files\Borland\Delphi7\Projects\Bpl;C:\Program Files\Git\cmd;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin</value>
<value type="QString">PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH</value>
<value type="QString">PROCESSOR_ARCHITECTURE=x86</value>
<value type="QString">PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 6, GenuineIntel</value>
<value type="QString">PROCESSOR_LEVEL=6</value>
<value type="QString">PROCESSOR_REVISION=1706</value>
<value type="QString">PROGRAMFILES=C:\Program Files</value>
<value type="QString">QTDIR=D:/Qt/2010.01/qt</value>
<value type="QString">SESSIONNAME=Console</value>
<value type="QString">SYSTEMDRIVE=C:</value>
<value type="QString">SYSTEMROOT=C:\WINDOWS</value>
<value type="QString">TEMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">TMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">USERDOMAIN=COMP</value>
<value type="QString">USERNAME=Andrey</value>
<value type="QString">USERPROFILE=C:\Documents and Settings\Andrey</value>
<value type="QString">VS90COMNTOOLS=D:\Programming\Microsoft Visual Studio 9.0\Common7\Tools\</value>
<value type="QString">VXIPNPPATH=C:\Program Files\IVI Foundation\VISA\</value>
<value type="QString">WINDIR=C:\WINDOWS</value>
</valuelist>
<valuelist key="abstractProcess.arguments" type="QVariantList" >
<value type="QString" >-j3</value>
<value type="QString" >-w</value>
<value key="abstractProcess.IgnoreReturnValue" type="bool">false</value>
<valuelist key="abstractProcess.arguments" type="QVariantList">
<value type="QString">-j3</value>
<value type="QString">-w</value>
</valuelist>
<value key="abstractProcess.command" type="QString" >/usr/bin/make</value>
<value key="abstractProcess.enabled" type="bool" >true</value>
<value key="abstractProcess.workingDirectory" type="QString" >/home/andrey/documents/sm11/Alien Defender/ad</value>
<valuelist key="makeargs" type="QVariantList" >
<value type="QString" >-j3</value>
<value key="abstractProcess.command" type="QString">D:/Qt/2010.01/mingw/bin/mingw32-make.exe</value>
<value key="abstractProcess.enabled" type="bool">true</value>
<value key="abstractProcess.workingDirectory" type="QString">C:/aliendefender</value>
<valuelist key="makeargs" type="QVariantList">
<value type="QString">-j3</value>
</valuelist>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Debug-cleanstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList" >
<value type="QString" >DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-S5Q8zKlbhY,guid=6ef5dd4aeeaf9cb3055a39934b629f00</value>
<value type="QString" >DESKTOP_SESSION=gnome</value>
<value type="QString" >DESKTOP_STARTUP_ID=</value>
<value type="QString" >DISPLAY=:0.0</value>
<value type="QString" >GDMSESSION=gnome</value>
<value type="QString" >GDM_KEYBOARD_LAYOUT=us</value>
<value type="QString" >GDM_LANG=ru_RU.UTF-8</value>
<value type="QString" >GNOME_DESKTOP_SESSION_ID=this-is-deprecated</value>
<value type="QString" >GNOME_KEYRING_SOCKET=/tmp/keyring-116Pb7/socket</value>
<value type="QString" >GTK_MODULES=canberra-gtk-module</value>
<value type="QString" >GTK_RC_FILES=/etc/gtk/gtkrc:/home/andrey/.gtkrc-1.2-gnome2</value>
<value type="QString" >HOME=/home/andrey</value>
<value type="QString" >LANG=ru_RU.UTF-8</value>
<value type="QString" >LD_LIBRARY_PATH=/usr/lib/qtcreator:</value>
<value type="QString" >LOGNAME=andrey</value>
<value type="QString" >ORBIT_SOCKETDIR=/tmp/orbit-andrey</value>
<value type="QString" >PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games</value>
<value type="QString" >PWD=/home/andrey</value>
<value type="QString" >QTDIR=/usr</value>
<value type="QString" >SESSION_MANAGER=local/buull-eeePC:@/tmp/.ICE-unix/1205,unix/buull-eeePC:/tmp/.ICE-unix/1205</value>
<value type="QString" >SHELL=/bin/bash</value>
<value type="QString" >SPEECHD_PORT=7560</value>
<value type="QString" >SSH_AGENT_PID=1318</value>
<value type="QString" >SSH_AUTH_SOCK=/tmp/keyring-116Pb7/socket.ssh</value>
<value type="QString" >USER=andrey</value>
<value type="QString" >USERNAME=andrey</value>
<value type="QString" >XAUTHORITY=/var/run/gdm/auth-for-andrey-9AQSnh/database</value>
<value type="QString" >XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/</value>
<value type="QString" >XDG_SESSION_COOKIE=f0649decca52f2beb55c9ea74ad1d028-1264754424.556816-274237329</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value>
<valuelist key="abstractProcess.Environment" type="QVariantList">
<value type="QString">ALLUSERSPROFILE=C:\Documents and Settings\All Users</value>
<value type="QString">APPDATA=C:\Documents and Settings\Andrey\Application Data</value>
<value type="QString">COMMONPROGRAMFILES=C:\Program Files\Common Files</value>
<value type="QString">COMPUTERNAME=COMP</value>
<value type="QString">COMSPEC=C:\WINDOWS\system32\cmd.exe</value>
<value type="QString">FP_NO_HOST_CHECK=NO</value>
<value type="QString">HOMEDRIVE=C:</value>
<value type="QString">HOMEPATH=\Documents and Settings\Andrey</value>
<value type="QString">INCLUDE=C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include</value>
<value type="QString">LIB=C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib</value>
<value type="QString">LOGONSERVER=\\COMP</value>
<value type="QString">MSDEVDIR=C:\Program Files\Microsoft Visual Studio\Common\MSDev98</value>
<value type="QString">NUMBER_OF_PROCESSORS=2</value>
<value type="QString">OS=Windows_NT</value>
<value type="QString">PATH=D:\Qt\2010.01\mingw\bin;D:\Qt\2010.01\qt\bin;C:\Program Files\PC Connectivity Solution\;C:\Program Files\JavaFX\javafx-sdk1.2\bin;C:\Program Files\JavaFX\javafx-sdk1.2\emulator\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\IVI Foundation\VISA\WinNT\Bin;C:\Program Files\Borland\Delphi7\Bin;C:\Program Files\Borland\Delphi7\Projects\Bpl;C:\Program Files\Git\cmd;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin</value>
<value type="QString">PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH</value>
<value type="QString">PROCESSOR_ARCHITECTURE=x86</value>
<value type="QString">PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 6, GenuineIntel</value>
<value type="QString">PROCESSOR_LEVEL=6</value>
<value type="QString">PROCESSOR_REVISION=1706</value>
<value type="QString">PROGRAMFILES=C:\Program Files</value>
<value type="QString">QTDIR=D:/Qt/2010.01/qt</value>
<value type="QString">SESSIONNAME=Console</value>
<value type="QString">SYSTEMDRIVE=C:</value>
<value type="QString">SYSTEMROOT=C:\WINDOWS</value>
<value type="QString">TEMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">TMP=C:\DOCUME~1\Andrey\LOCALS~1\Temp</value>
<value type="QString">USERDOMAIN=COMP</value>
<value type="QString">USERNAME=Andrey</value>
<value type="QString">USERPROFILE=C:\Documents and Settings\Andrey</value>
<value type="QString">VS90COMNTOOLS=D:\Programming\Microsoft Visual Studio 9.0\Common7\Tools\</value>
<value type="QString">VXIPNPPATH=C:\Program Files\IVI Foundation\VISA\</value>
<value type="QString">WINDIR=C:\WINDOWS</value>
</valuelist>
<valuelist key="abstractProcess.arguments" type="QVariantList" >
<value type="QString" >clean</value>
<value type="QString" >-w</value>
<value key="abstractProcess.IgnoreReturnValue" type="bool">true</value>
<valuelist key="abstractProcess.arguments" type="QVariantList">
<value type="QString">clean</value>
<value type="QString">-w</value>
</valuelist>
<value key="abstractProcess.command" type="QString">D:/Qt/2010.01/mingw/bin/mingw32-make.exe</value>
<value key="abstractProcess.enabled" type="bool">true</value>
<value key="abstractProcess.workingDirectory" type="QString">C:/aliendefender</value>
<value key="cleanConfig" type="bool">true</value>
<valuelist key="makeargs" type="QVariantList">
<value type="QString">clean</value>
</valuelist>
<value key="abstractProcess.command" type="QString" >/usr/bin/make</value>
<value key="abstractProcess.enabled" type="bool" >true</value>
<value key="abstractProcess.workingDirectory" type="QString" >/home/andrey/documents/sm11/Alien Defender/ad</value>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Release-buildstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Release</value>
<value key="buildConfiguration" type="int" >0</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value>
<value key="buildConfiguration" type=""></value>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Release-buildstep1</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Release</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value>
</valuemap>
</data>
<data>
<variable>buildconfiguration-Release-cleanstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" >Release</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value>
</valuemap>
</data>
<data>
<variable>buildconfigurations</variable>
<valuelist type="QVariantList" >
<value type="QString" >Debug</value>
<value type="QString" >Release</value>
<valuelist type="QVariantList">
<value type="QString">Debug</value>
<value type="QString">Release</value>
</valuelist>
</data>
<data>
<variable>buildstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" ></value>
<value key="mkspec" type="QString" ></value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value>
<value key="mkspec" type="QString"></value>
</valuemap>
</data>
<data>
<variable>buildstep1</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" ></value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value>
</valuemap>
</data>
<data>
<variable>buildsteps</variable>
<valuelist type="QVariantList" >
<value type="QString" >trolltech.qt4projectmanager.qmake</value>
<value type="QString" >trolltech.qt4projectmanager.make</value>
<valuelist type="QVariantList">
<value type="QString">trolltech.qt4projectmanager.qmake</value>
<value type="QString">trolltech.qt4projectmanager.make</value>
</valuelist>
</data>
<data>
<variable>cleanstep0</variable>
<valuemap type="QVariantMap" >
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString" ></value>
<value key="clean" type="bool" >true</value>
<valuemap type="QVariantMap">
<value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value>
<value key="clean" type="bool">true</value>
</valuemap>
</data>
<data>
<variable>cleansteps</variable>
<valuelist type="QVariantList" >
<value type="QString" >trolltech.qt4projectmanager.make</value>
<valuelist type="QVariantList">
<value type="QString">trolltech.qt4projectmanager.make</value>
</valuelist>
</data>
<data>
<variable>defaultFileEncoding</variable>
<value type="QByteArray" >UTF-8</value>
<value type="QByteArray">UTF-8</value>
</data>
<data>
<variable>project</variable>
<valuemap type="QVariantMap" />
<valuemap type="QVariantMap"/>
</data>
</qtcreator>

View File

@@ -66,6 +66,7 @@ bool Aliens::CreatePath(Alien * al)
for (int i = 0; i < data->size.width(); i++) {
for (int j = 0; j < data->size.height(); j++) TmpCells[i][j] = data->Cells[i][j];
}
al->path.clear();
al->PathIndex = 0;
if (WaveTrace(al))
@@ -83,7 +84,7 @@ bool Aliens::CreatePath(Alien * al)
}
tp = al->path[al->path.size() - 1];
tmpPnt.push_back(tp);
qDebug() << tmpPnt.size();
//qDebug() << tmpPnt.size();
al->path = tmpPnt;
//al->Position.pnt.setX(al->path[0].x()*data->cellsize);
//al->Position.pnt.setY(al->path[0].y()*data->cellsize);
@@ -122,18 +123,18 @@ bool Aliens::WaveTrace(Alien * al) {
cp = al->Position.pnt/data->cellsize;
curp.push_back(cp);
TmpCells[cp.x()][cp.y()] = 1;
while (!stop) {
qDebug() << "trace";
while (!stop) {
tmpp = curp;
curp.clear();
qDebug() << tmpp.size();
//qDebug() << tmpp.size();
stop = true;
for (int i = 0; i < tmpp.size(); i++) {
cp = tmpp[i];
if (cp == al->DestPnt) {
TmpCells[cp.x()][cp.y()] = step;
qDebug() << "true";
InvWaveTrace(cp, step, al);
qDebug() << "true";
qDebug() << al->path.size();
return true;
}

View File

@@ -2,6 +2,7 @@
#define ALIENS_H
#include "basestruct.h"
#include "alien.h"
class Aliens
{

View File

@@ -38,35 +38,6 @@ struct GameData
};*/
/*struct AlienImages
{
vector<QPixmap> pix;
};*/
struct Alien
{
// unsigned char AName[64];
FPVector Position;
int PicType;
//int FlX;
//int FlY;
//int Armor;
//int Level;
//int Money;
int PathIndex;
int PicIndex;
//int PicIndl;
//int MaxFrame;
//float Health;
float Speed;
float PicFrame;
//float PicI;
//float Regeneration;
QVector<QPointF> path;//path() As Point
QPoint DestPnt;
// Effect Effects;
};
struct Tower

24
images.qrc Normal file
View File

@@ -0,0 +1,24 @@
<RCC>
<qresource prefix="/aliens">
<file>images/Aliens/Al_00_0.png</file>
<file>images/Aliens/Al_00_1.png</file>
<file>images/Aliens/Al_00_2.png</file>
<file>images/Aliens/Al_00_3.png</file>
<file>images/Aliens/Al_00_4.png</file>
<file>images/Aliens/Al_00_5.png</file>
<file>images/Aliens/Al_00_6.png</file>
<file>images/Aliens/Al_00_7.png</file>
<file>images/Aliens/Al_00_8.png</file>
<file>images/Aliens/Al_00_9.png</file>
<file>images/Aliens/Al_00_10.png</file>
<file>images/Aliens/Al_00_11.png</file>
<file>images/Aliens/Al_00_12.png</file>
<file>images/Aliens/Al_00_13.png</file>
<file>images/Aliens/Al_00_14.png</file>
<file>images/Aliens/Al_00_15.png</file>
<file>images/Aliens/Al_00_16.png</file>
<file>images/Aliens/Al_00_17.png</file>
<file>images/Aliens/Al_00_18.png</file>
<file>images/Aliens/Al_00_19.png</file>
</qresource>
</RCC>

View File

@@ -25,12 +25,13 @@ MainWindow::MainWindow(QWidget *parent)
//AnimAlien = 0;
timer->start(50);
qDebug() << "Load DONE!";
mousebt = 0;
}
void MainWindow::ADrender()
{
adp->drawAliens(aliens->curAliens[0].path, &aliens->curAliens[0].Position);
adp->drawAliens(aliens->curAliens[0].AlienPath(), aliens->curAliens[0].pos());
this->repaint();
}
@@ -46,49 +47,53 @@ void MainWindow::paintEvent(QPaintEvent*)
void MainWindow::mouseMoveEvent ( QMouseEvent * event )
{
if (mousebt == 1) ClearCell(event->x(),event->y());
else SetCell(event->x(),event->y());
if (mousebt == 1) ClearCell(event->pos());
if (mousebt == 2) SetCell(event->pos());
}
void MainWindow::mousePressEvent ( QMouseEvent * event )
{
if (event->button() == Qt::RightButton) {
ClearCell(event->x(),event->y());
ClearCell(event->pos());
mousebt = 1;
} else {
SetCell(event->x(),event->y());
mousebt = 0;
return;
}
if(event->button() == Qt::LeftButton) {
SetCell(event->pos());
mousebt = 2;
return;
}
mousebt = 0;
}
void MainWindow::SetCell(int x, int y)
void MainWindow::SetCell(QPoint pos)
{
QPoint cp;
QRect wdrect(0, 0, (this->width() / cellsize) * cellsize, (this->height() / cellsize) * cellsize);
if (wdrect.contains(x,y)) {
cp.setX((int) x / cellsize);
cp.setY((int) y / cellsize);
if (wdrect.contains(pos)) {
cp.setX(pos.x()/cellsize);
cp.setY(pos.y()/cellsize);
//qDebug() << "click: " << cp.x() << ";" << cp.y();
GameMain->data->Cells[cp.x()][cp.y()] = - 1;
adp->drawcell(cp);
//aliens->clearAliens();
//adp->StepAlien=0;
//adp->AnimAlien=0;
if (!aliens->CreatePath(&(aliens->curAliens[0]))) ClearCell(x,y);
if (!aliens->CreatePath(&(aliens->curAliens[0]))) ClearCell(pos);
else adp->StepAlien=0;
}
}
void MainWindow::ClearCell(int x, int y)
void MainWindow::ClearCell(QPoint pos)
{
QPoint cp;
QRect wdrect(0, 0, (this->width() / cellsize) * cellsize, (this->height() / cellsize) * cellsize);
if (wdrect.contains(x,y)) {
cp.setX((int) x / cellsize);
cp.setY((int) y / cellsize);
if (wdrect.contains(pos)) {
cp.setX(pos.x()/cellsize);
cp.setY(pos.y()/cellsize);
//qDebug() << "click: " << cp.x() << ";" << cp.y();
GameMain->data->Cells[cp.x()][cp.y()] = 0;
adp->clearcell(cp);

View File

@@ -25,8 +25,8 @@ public slots:
void ADrender();
private:
void paintEvent(QPaintEvent*);
void SetCell(int x, int y);
void ClearCell(int x, int y);
void SetCell(QPoint pos);
void ClearCell(QPoint pos);
void mouseMoveEvent ( QMouseEvent * event );
void mousePressEvent ( QMouseEvent * event );
Ui::MainWindow *ui;
@@ -35,7 +35,7 @@ private:
adpainter * adp;
game * GameMain;
QTimer *timer;
bool mousebt;
int mousebt;
int cellsize, destx, desty;
//unsigned int AnimAlien;
};