Hirdetés
Ú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!
- HP 14 Elitebook 640 G9 FHD IPS i5-1235U 4.4Ghz 10mag 16GB 256GB Intel Iris XE Win11 Pro Garancia
- Új Lenovo E14 Thinkpad WUXGA IPS Ryzen7 7730U 16GB 512GB SSD Radeon RX Vega8 Win11 Pro Garancia
- HP Z240 Komplett asztali pc, garanciával, 1050ti 4GB Videóval!
- i3 8100 és i5-9400 processzorok
- 6 és 7. generációs i3 és i5 procik
- Apple iPhone 12 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Pro Wax 100 gyantamelegítő gép gyantacsomaggal
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600 / RX 5700 / 16GB DDR4 / 512GB SSD
- LG 32UN880P - 32" IPS ERGO / 4K UHD / 60Hz 5ms / DisplayHDR 400 / USB Type-C / AMD FreeSync
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest