Új hozzászólás Aktív témák
-
Tomi_78
aktív tag
válasz
mgoogyi #4267 üzenetére
Nem, a Unt1.h-ban ez a fejléc:
void __fastcall alakcsinalas(TObject *Sender);
De itt az egész kódom, talán még nem olyan nagy annyira, hogy ne tegyem itt közzé:#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
class egyalak
{
public:
egyalak(int px, int py, Graphics::TBitmap* kep)
{ x=px; y=py; kepe=kep;}
int x;
int y;
Graphics::TBitmap* kepe;
unsigned char alkepvaltoido; //0-255
unsigned char aktalkep;
unsigned char alkepdb;
unsigned char sebessege;
};
const int maxalakdb = 5;
egyalak *alakok[maxalakdb];
int alakdb = maxalakdb;
TTimer *alakmozgato;
Graphics::TBitmap* kepei[4];
int pontok = 0;
unsigned char as = 32;
unsigned char th = 1;
void __fastcall TForm1::alakcsinalas(TObject *Sender)
{
int i;
for (i=0; i<alakdb; i++)
{
alakok[i]=new egyalak(4,i*kepei[0]->Height*2,kepei[0]);
alakok[i]->alkepvaltoido=5;
alakok[i]->aktalkep=0;
alakok[i]->alkepdb=3;
alakok[i]->sebessege=as;
}
}
void __fastcall TForm1::alakmozgatas(TObject *Sender)
{
int i;
for (i=0; i<alakdb; i++)
{
if (alakok[i]->alkepvaltoido>0)
{
alakok[i]->alkepvaltoido-=1;
}
else
{
if (alakok[i]->aktalkep+1<=alakok[i]->alkepdb)
{
alakok[i]->aktalkep+=1;
}
else
{
alakok[i]->aktalkep=0;
}
if (alakok[i]->x+(kepei[0]->Width)<Form1->Width)
{
alakok[i]->x+=alakok[i]->sebessege;
}
else
{
delete alakok[i];
if (i<alakdb)
{
int j;
for (j=i+1; j<alakdb; j++)
{
alakok[i]=alakok[j];
}
};
alakdb-=1;
if (alakdb<1)
{
if (as+4<255)
{
as+=4;
}
&alakcsinalas;
};
}
alakok[i]->alkepvaltoido=5;
}
alakok[i]->kepe=kepei[alakok[i]->aktalkep];
}
Invalidate();
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
kepei[0] = new Graphics::TBitmap;
kepei[0]->LoadFromFile("alak\\alak_all.bmp");
kepei[0]->Transparent=true;
kepei[2] = new Graphics::TBitmap;
kepei[2]->LoadFromFile("alak\\alak_all.bmp");
kepei[2]->Transparent=true;
kepei[1] = new Graphics::TBitmap;
kepei[1]->LoadFromFile("alak\\alak_lep1.bmp");
kepei[1]->Transparent=true;
kepei[3] = new Graphics::TBitmap;
kepei[3]->LoadFromFile("alak\\alak_lep2.bmp");
kepei[3]->Transparent=true;
&alakcsinalas;
alakmozgato=new TTimer(this); //Időzítő létrehozása
alakmozgato->Interval=50; //Időtartam beállítása
alakmozgato->Enabled=true;
alakmozgato->OnTimer=alakmozgatas; //Ez történjen, ha lefutott.
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Kirajzol(TObject *Sender)
{
TPoint p = Form1->ScreenToClient(Mouse->CursorPos);
int i;
for (i=0; i<alakdb; i++)
{
if (GetAsyncKeyState(VK_LBUTTON) && p.x>=alakok[i]->x && p.x<=alakok[i]->x+kepei[0]->Width && p.y>=alakok[i]->y && p.y<=alakok[i]->y+kepei[0]->Height)
{
pontok+=1;
delete alakok[i];
if (i<alakdb)
{
int j;
for (j=i+1; j<alakdb; j++)
{
alakok[i]=alakok[j];
}
};
alakdb-=1;
}
Canvas->Draw(alakok[i]->x,alakok[i]->y,alakok[i]->kepe);
}
Form1->Caption = "Alakok: "+IntToStr(alakdb)+" - Pontjaid: "+IntToStr(pontok)+" - Támadóhullám: "+IntToStr(th);
}
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Ismét minimalista miditorony érkezett a Fractal Design műhelyéből
- Parkside szerszám kibeszélő
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Diablo IV
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- gban: Ingyen kellene, de tegnapra
- Kertészet, mezőgazdaság topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Kerékpársportok
- Motorola Edge 60 és Edge 60 Pro - és a vas?
- További aktív témák...
- REFURBISHED és ÚJ - HP USB-C Dock G5 docking station (5TW10AA) - 3x4K felbontás, 120Hz képfrissítés
- PlayStation Network Card (PSN) ajándékkártyák, egyenesen a Sony-tól!
- Azonnali A320 B350 X370 B450 X470 A520 B550 X570 chipset alaplap felvásárlás személyes/csomagküldés
- PS3 Játékok 1500Ft/db - RÉSZLETEK A LEÍRÁSBAN
- Honor 400 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest