|
Parkur kısmında karakter ve animasyon yüklenmiyor ve çanta oyunu kısmında sürükleme çalışmıyor sorunu bir türlü bulamadım.
// DEPREM EGITIMI OYUNLARI - MENU + PARKUR + CANTA
var Form1: TclForm; // ===== MENU ===== pnlMenu: TclProPanel; lblMenuBaslik: TclLabel; btnMenuParkur, btnMenuCanta, btnMenuCikis: TclProButton; // ===== PARKUR OYUNU ===== pnlParkur: TclProPanel; pnlParkurKontrol: TclPanel; imgParkurArka: TclImage; imgKarakter: TclImage; karakterCember: TclCircle; animIdle, animWalk, animRun, animJump: TclBitmapListAnimation; tmrParkur: TClTimer; pltf1, pltf2, pltf3, pltf4, pltf5: TclPanel; pltfBitis: TclPanel; btnParkurSol, btnParkurSag, btnParkurZipla: TclButton; btnParkurMenu: TclButton; lblParkurBaslik: TclLabel; karakterHiz, velocityY, yerCekimi: Integer; solGidiyor, sagGidiyor, havada: Boolean; idleAktif, walkAktif, runAktif, jumpAktif: Boolean; // ===== CANTA OYUNU ===== pnlCanta: TclProPanel; pnlCantaUst, pnlCantaAlan, pnlCantaAlt: TclPanel; lblCantaBaslik, lblCantaSure, lblCantaPuan, lblCantaAciklama: TclLabel; btnCantaMenu: TclButton; pnlTorba: TclProPanel; lblTorba: TclLabel; pnlSu, pnlIlkYardim, pnlFener, pnlIlac: TclProPanel; pnlDuduk, pnlBattaniye, pnlRadyo, pnlPara: TclProPanel; pnlTelefon, pnlKonsol, pnlPerfum, pnlLaptop: TclProPanel; lblSu, lblIlkYardim, lblFener, lblIlac: TclLabel; lblDuduk, lblBattaniye, lblRadyo, lblPara: TclLabel; lblTelefon, lblKonsol, lblPerfum, lblLaptop: TclLabel; pnlBilgi: TclProPanel; lblBilgiBaslik, lblBilgiIcerik: TclLabel; btnBilgiKapat: TclProButton; tmrCanta: TClTimer; cantaSure, cantaPuan, cantaKoyulan: Integer; secilenPanel: TclProPanel; secilenVar: Boolean; secilenID: Integer; surukleniyorMu: Boolean; baslangicX, baslangicY: Integer; offsetX, offsetY: Integer;
// ========== ANIMASYON FONKSIYONLARI ==========
void IdleBaslat { if(idleAktif == False) { animIdle.Enabled = True; animWalk.Enabled = False; animRun.Enabled = False; animJump.Enabled = False; idleAktif = True; walkAktif = False; runAktif = False; jumpAktif = False; } }
void RunBaslat { if(runAktif == False) { animIdle.Enabled = False; animWalk.Enabled = False; animRun.Enabled = True; animJump.Enabled = False; idleAktif = False; walkAktif = False; runAktif = True; jumpAktif = False; } }
void JumpBaslat { if(jumpAktif == False) { animIdle.Enabled = False; animWalk.Enabled = False; animRun.Enabled = False; animJump.Enabled = True; idleAktif = False; walkAktif = False; runAktif = False; jumpAktif = True; } }
// ========== MENU FONKSIYONLARI ==========
void MenuGoster { pnlMenu.Visible = True; pnlParkur.Visible = False; pnlCanta.Visible = False; tmrParkur.Enabled = False; tmrCanta.Enabled = False; }
void ParkurAc { pnlMenu.Visible = False; pnlParkur.Visible = True; pnlCanta.Visible = False; imgKarakter.Position.X = 50; imgKarakter.Position.Y = 330; karakterCember.Position.X = 50; karakterCember.Position.Y = 330; karakterHiz = 5; velocityY = 0; yerCekimi = 1; solGidiyor = False; sagGidiyor = False; havada = False; idleAktif = False; walkAktif = False; runAktif = False; jumpAktif = False; IdleBaslat; tmrParkur.Enabled = True; }
void CantaAc { pnlMenu.Visible = False; pnlParkur.Visible = False; pnlCanta.Visible = True; cantaSure = 90; cantaPuan = 0; cantaKoyulan = 0; secilenVar = False; secilenID = 0; surukleniyorMu = False; pnlSu.Visible = True; pnlIlkYardim.Visible = True; pnlFener.Visible = True; pnlIlac.Visible = True; pnlDuduk.Visible = True; pnlBattaniye.Visible = True; pnlRadyo.Visible = True; pnlPara.Visible = True; pnlTelefon.Visible = True; pnlKonsol.Visible = True; pnlPerfum.Visible = True; pnlLaptop.Visible = True; pnlBilgi.Visible = False; lblCantaPuan.Text = 'Puan: 0'; lblCantaSure.Text = 'Sure: 90s'; tmrCanta.Enabled = True; }
void MenuCikis { Form1.Close; }
// ========== PARKUR FONKSIYONLARI ==========
void ParkurKontrol var platformda: Boolean; { platformda = False;
if((imgKarakter.Position.X + imgKarakter.Width > pltf1.Position.X) && (imgKarakter.Position.X < pltf1.Position.X + pltf1.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltf1.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltf1.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltf1.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; }
if((imgKarakter.Position.X + imgKarakter.Width > pltf2.Position.X) && (imgKarakter.Position.X < pltf2.Position.X + pltf2.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltf2.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltf2.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltf2.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; }
if((imgKarakter.Position.X + imgKarakter.Width > pltf3.Position.X) && (imgKarakter.Position.X < pltf3.Position.X + pltf3.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltf3.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltf3.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltf3.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; }
if((imgKarakter.Position.X + imgKarakter.Width > pltf4.Position.X) && (imgKarakter.Position.X < pltf4.Position.X + pltf4.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltf4.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltf4.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltf4.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; }
if((imgKarakter.Position.X + imgKarakter.Width > pltf5.Position.X) && (imgKarakter.Position.X < pltf5.Position.X + pltf5.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltf5.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltf5.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltf5.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; }
if((imgKarakter.Position.X + imgKarakter.Width > pltfBitis.Position.X) && (imgKarakter.Position.X < pltfBitis.Position.X + pltfBitis.Width) && (imgKarakter.Position.Y + imgKarakter.Height >= pltfBitis.Position.Y) && (imgKarakter.Position.Y + imgKarakter.Height <= pltfBitis.Position.Y + 15) && (velocityY >= 0)) { platformda = True; imgKarakter.Position.Y = pltfBitis.Position.Y - imgKarakter.Height; velocityY = 0; havada = False; tmrParkur.Enabled = False; ShowMessage('TEBRIKLER! Parkuru tamamladin!'); }
if((platformda == False) && (imgKarakter.Position.Y < 330)) { havada = True; }
if(imgKarakter.Position.Y >= 330) { imgKarakter.Position.Y = 330; velocityY = 0; havada = False; } }
void ParkurHareket { if(havada) { JumpBaslat; } else if(solGidiyor || sagGidiyor) { RunBaslat; } else { IdleBaslat; }
if(solGidiyor && (imgKarakter.Position.X > 0)) { imgKarakter.Position.X = imgKarakter.Position.X - karakterHiz; karakterCember.Position.X = karakterCember.Position.X - karakterHiz; }
if(sagGidiyor && (imgKarakter.Position.X < 600)) { imgKarakter.Position.X = imgKarakter.Position.X + karakterHiz; karakterCember.Position.X = karakterCember.Position.X + karakterHiz; }
if(havada) { velocityY = velocityY + yerCekimi; imgKarakter.Position.Y = imgKarakter.Position.Y + velocityY; karakterCember.Position.Y = karakterCember.Position.Y + velocityY; }
ParkurKontrol; }
void ParkurSolBas { solGidiyor = True; } void ParkurSolBirak { solGidiyor = False; } void ParkurSagBas { sagGidiyor = True; } void ParkurSagBirak { sagGidiyor = False; }
void ParkurZipla { if(havada == False) { velocityY = -20; havada = True; } }
// ========== CANTA FONKSIYONLARI ==========
void EsyaSec(panel: TclProPanel; id: Integer) { secilenPanel = panel; secilenVar = True; secilenID = id; surukleniyorMu = True; // Başlangıç pozisyonunu kaydet (geri dönmek için) baslangicX = panel.Position.X; baslangicY = panel.Position.Y; // Mouse'un şu anki pozisyonunu kaydet // offset = mouse pozisyonu - panel pozisyonu offsetX = Form1.clFormMousePosX - panel.Position.X; offsetY = Form1.clFormMousePosY - panel.Position.Y; }
void SuSec { EsyaSec(pnlSu, 1); } void IlkYardimSec { EsyaSec(pnlIlkYardim, 2); } void FenerSec { EsyaSec(pnlFener, 3); } void IlacSec { EsyaSec(pnlIlac, 4); } void DudukSec { EsyaSec(pnlDuduk, 5); } void BattaniyeSec { EsyaSec(pnlBattaniye, 6); } void RadyoSec { EsyaSec(pnlRadyo, 7); } void ParaSec { EsyaSec(pnlPara, 8); } void TelefonSec { EsyaSec(pnlTelefon, 11); } void KonsolSec { EsyaSec(pnlKonsol, 12); } void PerfumSec { EsyaSec(pnlPerfum, 13); } void LaptopSec { EsyaSec(pnlLaptop, 14); }
void EsyaMouseMove { if(surukleniyorMu && secilenVar) { // Basit: mouse pozisyonu - offset = yeni panel pozisyonu secilenPanel.Position.X = Form1.clFormMousePosX - offsetX; secilenPanel.Position.Y = Form1.clFormMousePosY - offsetY; } }
void EsyaBirak var dogru: Boolean; cantaMerkezX, cantaMerkezY: Integer; esyaMerkezX, esyaMerkezY: Integer; { if(secilenVar == False) exit; surukleniyorMu = False;
cantaMerkezX = pnlTorba.Position.X + (pnlTorba.Width / 2); cantaMerkezY = pnlTorba.Position.Y + (pnlTorba.Height / 2); esyaMerkezX = secilenPanel.Position.X + (secilenPanel.Width / 2); esyaMerkezY = secilenPanel.Position.Y + (secilenPanel.Height / 2); if((esyaMerkezX > pnlTorba.Position.X) && (esyaMerkezX < pnlTorba.Position.X + pnlTorba.Width) && (esyaMerkezY > pnlTorba.Position.Y) && (esyaMerkezY < pnlTorba.Position.Y + pnlTorba.Height)) { dogru = False;
if(secilenID == 1) { dogru = True; lblBilgiBaslik.Text = 'SU - DOGRU!'; lblBilgiIcerik.Text = 'Enkaz altinda su hayat kurtarir! Gunluk en az 2 litre suya ihtiyac var.'; } if(secilenID == 2) { dogru = True; lblBilgiBaslik.Text = 'ILK YARDIM - DOGRU!'; lblBilgiIcerik.Text = 'Pansuman, tenturdiyot, agri kesici hayat kurtarir.'; } if(secilenID == 3) { dogru = True; lblBilgiBaslik.Text = 'FENER - DOGRU!'; lblBilgiIcerik.Text = 'Elektrikler kesilir. Karanlikta yol bulmak icin sart!'; } if(secilenID == 4) { dogru = True; lblBilgiBaslik.Text = 'ILAC - DOGRU!'; lblBilgiIcerik.Text = 'Kronik hastalar 1 haftalik ilac bulundurmali.'; } if(secilenID == 5) { dogru = True; lblBilgiBaslik.Text = 'DUSTUK - DOGRU!'; lblBilgiIcerik.Text = 'Enkaz altinda dustuk ile yardim cagirabilirsin!'; } if(secilenID == 6) { dogru = True; lblBilgiBaslik.Text = 'BATTANIYE - DOGRU!'; lblBilgiIcerik.Text = 'Soguk gecelerde battaniye hayat kurtarir.'; } if(secilenID == 7) { dogru = True; lblBilgiBaslik.Text = 'RADYO - DOGRU!'; lblBilgiIcerik.Text = 'Telefon calismazken radyo en guvenilir haber kaynagi.'; } if(secilenID == 8) { dogru = True; lblBilgiBaslik.Text = 'PARA - DOGRU!'; lblBilgiIcerik.Text = 'ATM calismazken nakit para hayat kurtarir.'; }
if(secilenID == 11) { ShowMessage('YANLIS! Telefon sarj olmadan ise yaramaz!'); dogru = False; } if(secilenID == 12) { ShowMessage('YANLIS! Oyun konsolu cantaya girmez!'); dogru = False; } if(secilenID == 13) { ShowMessage('YANLIS! Parfum ise yaramaz!'); dogru = False; } if(secilenID == 14) { ShowMessage('YANLIS! Laptop cok agir!'); dogru = False; }
if(dogru) { cantaPuan = cantaPuan + 10; cantaKoyulan = cantaKoyulan + 1; lblCantaPuan.Text = 'Puan: ' + IntToStr(cantaPuan); secilenPanel.Visible = False; pnlBilgi.Visible = True; if(cantaKoyulan >= 8) { tmrCanta.Enabled = False; ShowMessage('TEBRIKLER! Puan: ' + IntToStr(cantaPuan)); } } else { secilenPanel.Position.X = baslangicX; secilenPanel.Position.Y = baslangicY; } } else { secilenPanel.Position.X = baslangicX; secilenPanel.Position.Y = baslangicY; } secilenVar = False; secilenID = 0; }
void BilgiKapat { pnlBilgi.Visible = False; }
void CantaSureGuncelle { cantaSure = cantaSure - 1; lblCantaSure.Text = 'Sure: ' + IntToStr(cantaSure) + 's'; if(cantaSure <= 0) { tmrCanta.Enabled = False; ShowMessage('SURE DOLDU! Puan: ' + IntToStr(cantaPuan)); } }
void EsyaYap(pnl: TclProPanel; lbl: TclLabel; x, y: Integer; emoji, ad: String) { pnl.Align = AlNone; pnl.Position.X = x; pnl.Position.Y = y; pnl.Width = 100; pnl.Height = 80; pnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#34495e'); pnl.clProSettings.IsRound = True; pnl.clProSettings.RoundHeight = 12; pnl.clProSettings.RoundWidth = 12; pnl.SetclProSettings(pnl.clProSettings); lbl.Align = alClient; lbl.Text = emoji + #13 + ad; lbl.StyledSettings = ssFamily; lbl.TextSettings.Font.Size = 13; lbl.TextSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); lbl.TextSettings.HorzAlign = taCenter; lbl.TextSettings.VertAlign = taCenter; lbl.HitTest = False; }
// ========== ANA PROGRAM ==========
{ Form1 = TclForm.Create(Self); Form1.SetFormColor('#0f172a', '', clGNone);
// ===== ANA MENU ===== pnlMenu = Form1.AddNewProPanel(Form1, 'pnlMenu'); pnlMenu.Align = alClient; pnlMenu.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#1e293b'); pnlMenu.SetclProSettings(pnlMenu.clProSettings);
lblMenuBaslik = Form1.AddNewLabel(pnlMenu, 'lblMenuBaslik', 'DEPREM EGITIMI'); lblMenuBaslik.Align = alTop; lblMenuBaslik.Height = 120; lblMenuBaslik.StyledSettings = ssFamily; lblMenuBaslik.TextSettings.Font.Size = 28; lblMenuBaslik.TextSettings.FontColor = clAlphaColor.clHexToColor('#f59e0b'); lblMenuBaslik.TextSettings.HorzAlign = taCenter; lblMenuBaslik.TextSettings.VertAlign = taCenter;
btnMenuParkur = Form1.AddNewProButton(pnlMenu, 'btnMenuParkur', 'PARKUR OYUNU'); btnMenuParkur.Align = alNone; btnMenuParkur.Position.X = 200; btnMenuParkur.Position.Y = 150; btnMenuParkur.Width = 290; btnMenuParkur.Height = 80; btnMenuParkur.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#3b82f6'); btnMenuParkur.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); btnMenuParkur.clProSettings.FontSize = 20; btnMenuParkur.clProSettings.IsRound = True; btnMenuParkur.clProSettings.RoundHeight = 20; btnMenuParkur.clProSettings.RoundWidth = 20; btnMenuParkur.SetclProSettings(btnMenuParkur.clProSettings); Form1.AddNewEvent(btnMenuParkur, tbeOnClick, 'ParkurAc');
btnMenuCanta = Form1.AddNewProButton(pnlMenu, 'btnMenuCanta', 'DEPREM CANTASI'); btnMenuCanta.Align = alNone; btnMenuCanta.Position.X = 200; btnMenuCanta.Position.Y = 260; btnMenuCanta.Width = 290; btnMenuCanta.Height = 80; btnMenuCanta.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#10b981'); btnMenuCanta.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); btnMenuCanta.clProSettings.FontSize = 20; btnMenuCanta.clProSettings.IsRound = True; btnMenuCanta.clProSettings.RoundHeight = 20; btnMenuCanta.clProSettings.RoundWidth = 20; btnMenuCanta.SetclProSettings(btnMenuCanta.clProSettings); Form1.AddNewEvent(btnMenuCanta, tbeOnClick, 'CantaAc');
btnMenuCikis = Form1.AddNewProButton(pnlMenu, 'btnMenuCikis', 'CIKIS'); btnMenuCikis.Align = alNone; btnMenuCikis.Position.X = 200; btnMenuCikis.Position.Y = 370; btnMenuCikis.Width = 290; btnMenuCikis.Height = 80; btnMenuCikis.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#ef4444'); btnMenuCikis.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); btnMenuCikis.clProSettings.FontSize = 20; btnMenuCikis.clProSettings.IsRound = True; btnMenuCikis.clProSettings.RoundHeight = 20; btnMenuCikis.clProSettings.RoundWidth = 20; btnMenuCikis.SetclProSettings(btnMenuCikis.clProSettings); Form1.AddNewEvent(btnMenuCikis, tbeOnClick, 'MenuCikis');
// ===== PARKUR OYUNU ===== pnlParkur = Form1.AddNewProPanel(Form1, 'pnlParkur'); pnlParkur.Align = alClient; pnlParkur.Visible = False; pnlParkur.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#0f172a'); pnlParkur.SetclProSettings(pnlParkur.clProSettings);
imgParkurArka = Form1.AddNewImage(pnlParkur, 'imgParkurArka'); imgParkurArka.Align = alClient; imgParkurArka.HitTest = False;
lblParkurBaslik = Form1.AddNewLabel(pnlParkur, 'lblParkurBaslik', 'PARKUR'); lblParkurBaslik.Align = alTop; lblParkurBaslik.Height = 50; lblParkurBaslik.StyledSettings = ssFamily; lblParkurBaslik.TextSettings.Font.Size = 18; lblParkurBaslik.TextSettings.FontColor = clAlphaColor.clHexToColor('#f59e0b');
btnParkurMenu = Form1.AddNewButton(lblParkurBaslik, 'btnParkurMenu', 'MENU'); btnParkurMenu.Align = alRight; btnParkurMenu.Width = 100; Form1.AddNewEvent(btnParkurMenu, tbeOnClick, 'MenuGoster');
pltf1 = Form1.AddNewPanel(pnlParkur, 'pltf1'); pltf1.Align = AlNone; pltf1.Position.X = 150; pltf1.Position.Y = 300; pltf1.Width = 120; pltf1.Height = 20;
pltf2 = Form1.AddNewPanel(pnlParkur, 'pltf2'); pltf2.Align = AlNone; pltf2.Position.X = 300; pltf2.Position.Y = 260; pltf2.Width = 100; pltf2.Height = 20;
pltf3 = Form1.AddNewPanel(pnlParkur, 'pltf3'); pltf3.Align = AlNone; pltf3.Position.X = 430; pltf3.Position.Y = 220; pltf3.Width = 100; pltf3.Height = 20;
pltf4 = Form1.AddNewPanel(pnlParkur, 'pltf4'); pltf4.Align = AlNone; pltf4.Position.X = 350; pltf4.Position.Y = 160; pltf4.Width = 100; pltf4.Height = 20;
pltf5 = Form1.AddNewPanel(pnlParkur, 'pltf5'); pltf5.Align = AlNone; pltf5.Position.X = 480; pltf5.Position.Y = 100; pltf5.Width = 100; pltf5.Height = 20;
pltfBitis = Form1.AddNewPanel(pnlParkur, 'pltfBitis'); pltfBitis.Align = AlNone; pltfBitis.Position.X = 550; pltfBitis.Position.Y = 40; pltfBitis.Width = 100; pltfBitis.Height = 20;
imgKarakter = Form1.AddNewImage(pnlParkur, 'imgKarakter'); imgKarakter.Align = AlNone; imgKarakter.Width = 60; imgKarakter.Height = 80; imgKarakter.Visible = False;
karakterCember = Form1.AddNewCircle(pnlParkur, 'karakterCember'); karakterCember.Align = AlNone; karakterCember.Width = 60; karakterCember.Height = 80;
// IDLE ANIMASYON (Beklerken) Form1.AddAssetFromUrl('https://i.ibb.co/7xpbg5dH/dle.png'); animIdle = Form1.AddNewBitmapListAnimation(karakterCember, 'animIdle'); animIdle.AnimationBitmap.LoadFromFile(Clomosy.AppFilesPath + 'dle.png'); animIdle.AnimationCount = 6; animIdle.AnimationRowCount = 1; animIdle.Loop = True; animIdle.Enabled = True; animIdle.PropertyName = 'Fill.Bitmap.Bitmap'; animIdle.Duration = 1.0;
// WALK ANIMASYON (Walk yok, Idle kullan) animWalk = Form1.AddNewBitmapListAnimation(karakterCember, 'animWalk'); animWalk.AnimationBitmap.LoadFromFile(Clomosy.AppFilesPath + 'dle.png'); animWalk.AnimationCount = 6; animWalk.AnimationRowCount = 1; animWalk.Loop = True; animWalk.Enabled = False; animWalk.PropertyName = 'Fill.Bitmap.Bitmap'; animWalk.Duration = 0.8;
// RUN ANIMASYON (Kosarken) Form1.AddAssetFromUrl('https://i.ibb.co/xqjD59zW/Run.png'); animRun = Form1.AddNewBitmapListAnimation(karakterCember, 'animRun'); animRun.AnimationBitmap.LoadFromFile(Clomosy.AppFilesPath + 'Run.png'); animRun.AnimationCount = 8; animRun.AnimationRowCount = 1; animRun.Loop = True; animRun.Enabled = False; animRun.PropertyName = 'Fill.Bitmap.Bitmap'; animRun.Duration = 0.6;
// JUMP ANIMASYON (Ziplayarken) Form1.AddAssetFromUrl('https://i.ibb.co/rf5NR8xw/Jump.png'); animJump = Form1.AddNewBitmapListAnimation(karakterCember, 'animJump'); animJump.AnimationBitmap.LoadFromFile(Clomosy.AppFilesPath + 'Jump.png'); animJump.AnimationCount = 10; animJump.AnimationRowCount = 1; animJump.Loop = True; animJump.Enabled = False; animJump.PropertyName = 'Fill.Bitmap.Bitmap'; animJump.Duration = 0.5;
pnlParkurKontrol = Form1.AddNewPanel(pnlParkur, 'pnlParkurKontrol'); pnlParkurKontrol.Align = alBottom; pnlParkurKontrol.Height = 80;
btnParkurSol = Form1.AddNewButton(pnlParkurKontrol, 'btnParkurSol', '<'); btnParkurSol.Align = alLeft; btnParkurSol.Width = 100; Form1.AddNewEvent(btnParkurSol, tbeOnMouseDown, 'ParkurSolBas'); Form1.AddNewEvent(btnParkurSol, tbeOnMouseUp, 'ParkurSolBirak');
btnParkurZipla = Form1.AddNewButton(pnlParkurKontrol, 'btnParkurZipla', 'ZIPLA'); btnParkurZipla.Align = alClient; Form1.AddNewEvent(btnParkurZipla, tbeOnClick, 'ParkurZipla');
btnParkurSag = Form1.AddNewButton(pnlParkurKontrol, 'btnParkurSag', '>'); btnParkurSag.Align = alRight; btnParkurSag.Width = 100; Form1.AddNewEvent(btnParkurSag, tbeOnMouseDown, 'ParkurSagBas'); Form1.AddNewEvent(btnParkurSag, tbeOnMouseUp, 'ParkurSagBirak');
tmrParkur = Form1.AddNewTimer(Form1, 'tmrParkur', 30); tmrParkur.Enabled = False; Form1.AddNewEvent(tmrParkur, tbeOnTimer, 'ParkurHareket');
// ===== CANTA OYUNU ===== pnlCanta = Form1.AddNewProPanel(Form1, 'pnlCanta'); pnlCanta.Align = alClient; pnlCanta.Visible = False; pnlCanta.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#0f172a'); pnlCanta.SetclProSettings(pnlCanta.clProSettings);
pnlCantaUst = Form1.AddNewPanel(pnlCanta, 'pnlCantaUst'); pnlCantaUst.Align = alTop; pnlCantaUst.Height = 60;
lblCantaBaslik = Form1.AddNewLabel(pnlCantaUst, 'lblCantaBaslik', 'CANTA'); lblCantaBaslik.Align = alLeft; lblCantaBaslik.Width = 200; lblCantaBaslik.StyledSettings = ssFamily; lblCantaBaslik.TextSettings.Font.Size = 18; lblCantaBaslik.TextSettings.FontColor = clAlphaColor.clHexToColor('#f59e0b');
lblCantaPuan = Form1.AddNewLabel(pnlCantaUst, 'lblCantaPuan', 'Puan: 0'); lblCantaPuan.Align = alRight; lblCantaPuan.Width = 100; lblCantaPuan.StyledSettings = ssFamily; lblCantaPuan.TextSettings.Font.Size = 14; lblCantaPuan.TextSettings.FontColor = clAlphaColor.clHexToColor('#10b981');
lblCantaSure = Form1.AddNewLabel(pnlCantaUst, 'lblCantaSure', 'Sure: 90s'); lblCantaSure.Align = alRight; lblCantaSure.Width = 100; lblCantaSure.StyledSettings = ssFamily; lblCantaSure.TextSettings.Font.Size = 14; lblCantaSure.TextSettings.FontColor = clAlphaColor.clHexToColor('#ef4444');
btnCantaMenu = Form1.AddNewButton(pnlCantaUst, 'btnCantaMenu', 'MENU'); btnCantaMenu.Align = alRight; btnCantaMenu.Width = 80; Form1.AddNewEvent(btnCantaMenu, tbeOnClick, 'MenuGoster');
pnlCantaAlt = Form1.AddNewPanel(pnlCanta, 'pnlCantaAlt'); pnlCantaAlt.Align = alBottom; pnlCantaAlt.Height = 40; lblCantaAciklama = Form1.AddNewLabel(pnlCantaAlt, 'lblCantaAciklama', 'Esyalari surukleyip cantaya birak!'); lblCantaAciklama.Align = alClient; lblCantaAciklama.TextSettings.FontColor = clAlphaColor.clHexToColor('#94a3b8');
pnlCantaAlan = Form1.AddNewPanel(pnlCanta, 'pnlCantaAlan'); pnlCantaAlan.Align = alClient; // ÖNEMLI: MouseMove parent panel'de olmalı ki sürüklerken kesintisiz çalışsın! Form1.AddNewEvent(pnlCantaAlan, tbeOnMouseMove, 'EsyaMouseMove'); Form1.AddNewEvent(pnlCantaAlan, tbeOnMouseUp, 'EsyaBirak');
pnlTorba = Form1.AddNewProPanel(pnlCantaAlan, 'pnlTorba'); pnlTorba.Align = AlNone; pnlTorba.Position.X = 255; pnlTorba.Position.Y = 80; pnlTorba.Width = 180; pnlTorba.Height = 250; pnlTorba.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#15803d'); pnlTorba.clProSettings.BorderColor = clAlphaColor.clHexToColor('#22c55e'); pnlTorba.clProSettings.BorderWidth = 4; pnlTorba.clProSettings.IsRound = True; pnlTorba.clProSettings.RoundHeight = 18; pnlTorba.clProSettings.RoundWidth = 18; pnlTorba.SetclProSettings(pnlTorba.clProSettings); lblTorba = Form1.AddNewLabel(pnlTorba, 'lblTorba', '🎒'#13#13'CANTA'#13#13'Surukle birak'); lblTorba.Align = alClient; lblTorba.StyledSettings = ssFamily; lblTorba.TextSettings.Font.Size = 16; lblTorba.TextSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); lblTorba.TextSettings.HorzAlign = taCenter; lblTorba.TextSettings.VertAlign = taCenter; lblTorba.HitTest = False;
pnlSu = Form1.AddNewProPanel(pnlCantaAlan, 'pnlSu'); lblSu = Form1.AddNewLabel(pnlSu, 'lblSu', ''); EsyaYap(pnlSu, lblSu, 20, 60, '💧', 'Su'); Form1.AddNewEvent(pnlSu, tbeOnMouseDown, 'SuSec');
pnlIlkYardim = Form1.AddNewProPanel(pnlCantaAlan, 'pnlIlkYardim'); lblIlkYardim = Form1.AddNewLabel(pnlIlkYardim, 'lblIlkYardim', ''); EsyaYap(pnlIlkYardim, lblIlkYardim, 130, 60, '🩹', 'Ilk Yardim'); Form1.AddNewEvent(pnlIlkYardim, tbeOnMouseDown, 'IlkYardimSec');
pnlFener = Form1.AddNewProPanel(pnlCantaAlan, 'pnlFener'); lblFener = Form1.AddNewLabel(pnlFener, 'lblFener', ''); EsyaYap(pnlFener, lblFener, 455, 60, '🔦', 'Fener'); Form1.AddNewEvent(pnlFener, tbeOnMouseDown, 'FenerSec');
pnlIlac = Form1.AddNewProPanel(pnlCantaAlan, 'pnlIlac'); lblIlac = Form1.AddNewLabel(pnlIlac, 'lblIlac', ''); EsyaYap(pnlIlac, lblIlac, 565, 60, '💊', 'Ilac'); Form1.AddNewEvent(pnlIlac, tbeOnMouseDown, 'IlacSec');
pnlDuduk = Form1.AddNewProPanel(pnlCantaAlan, 'pnlDuduk'); lblDuduk = Form1.AddNewLabel(pnlDuduk, 'lblDuduk', ''); EsyaYap(pnlDuduk, lblDuduk, 20, 170, '📯', 'Dustuk'); Form1.AddNewEvent(pnlDuduk, tbeOnMouseDown, 'DudukSec');
pnlBattaniye = Form1.AddNewProPanel(pnlCantaAlan, 'pnlBattaniye'); lblBattaniye = Form1.AddNewLabel(pnlBattaniye, 'lblBattaniye', ''); EsyaYap(pnlBattaniye, lblBattaniye, 130, 170, '🛏️', 'Battaniye'); Form1.AddNewEvent(pnlBattaniye, tbeOnMouseDown, 'BattaniyeSec');
pnlRadyo = Form1.AddNewProPanel(pnlCantaAlan, 'pnlRadyo'); lblRadyo = Form1.AddNewLabel(pnlRadyo, 'lblRadyo', ''); EsyaYap(pnlRadyo, lblRadyo, 455, 170, '📻', 'Radyo'); Form1.AddNewEvent(pnlRadyo, tbeOnMouseDown, 'RadyoSec');
pnlPara = Form1.AddNewProPanel(pnlCantaAlan, 'pnlPara'); lblPara = Form1.AddNewLabel(pnlPara, 'lblPara', ''); EsyaYap(pnlPara, lblPara, 565, 170, '💵', 'Para'); Form1.AddNewEvent(pnlPara, tbeOnMouseDown, 'ParaSec');
pnlTelefon = Form1.AddNewProPanel(pnlCantaAlan, 'pnlTelefon'); lblTelefon = Form1.AddNewLabel(pnlTelefon, 'lblTelefon', ''); EsyaYap(pnlTelefon, lblTelefon, 20, 280, '📱', 'Telefon'); Form1.AddNewEvent(pnlTelefon, tbeOnMouseDown, 'TelefonSec');
pnlKonsol = Form1.AddNewProPanel(pnlCantaAlan, 'pnlKonsol'); lblKonsol = Form1.AddNewLabel(pnlKonsol, 'lblKonsol', ''); EsyaYap(pnlKonsol, lblKonsol, 130, 280, '🎮', 'Konsol'); Form1.AddNewEvent(pnlKonsol, tbeOnMouseDown, 'KonsolSec');
pnlPerfum = Form1.AddNewProPanel(pnlCantaAlan, 'pnlPerfum'); lblPerfum = Form1.AddNewLabel(pnlPerfum, 'lblPerfum', ''); EsyaYap(pnlPerfum, lblPerfum, 455, 280, '🌸', 'Parfum'); Form1.AddNewEvent(pnlPerfum, tbeOnMouseDown, 'PerfumSec');
pnlLaptop = Form1.AddNewProPanel(pnlCantaAlan, 'pnlLaptop'); lblLaptop = Form1.AddNewLabel(pnlLaptop, 'lblLaptop', ''); EsyaYap(pnlLaptop, lblLaptop, 565, 280, '💻', 'Laptop'); Form1.AddNewEvent(pnlLaptop, tbeOnMouseDown, 'LaptopSec');
pnlBilgi = Form1.AddNewProPanel(pnlCanta, 'pnlBilgi'); pnlBilgi.Align = AlNone; pnlBilgi.Position.X = 120; pnlBilgi.Position.Y = 140; pnlBilgi.Width = 450; pnlBilgi.Height = 230; pnlBilgi.Visible = False; pnlBilgi.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#15803d'); pnlBilgi.clProSettings.BorderColor = clAlphaColor.clHexToColor('#22c55e'); pnlBilgi.clProSettings.BorderWidth = 5; pnlBilgi.clProSettings.IsRound = True; pnlBilgi.clProSettings.RoundHeight = 25; pnlBilgi.clProSettings.RoundWidth = 25; pnlBilgi.SetclProSettings(pnlBilgi.clProSettings);
lblBilgiBaslik = Form1.AddNewLabel(pnlBilgi, 'lblBilgiBaslik', ''); lblBilgiBaslik.Align = alTop; lblBilgiBaslik.Height = 50; lblBilgiBaslik.StyledSettings = ssFamily; lblBilgiBaslik.TextSettings.Font.Size = 18; lblBilgiBaslik.TextSettings.FontColor = clAlphaColor.clHexToColor('#fbbf24'); lblBilgiBaslik.TextSettings.HorzAlign = taCenter; lblBilgiBaslik.TextSettings.VertAlign = taCenter;
lblBilgiIcerik = Form1.AddNewLabel(pnlBilgi, 'lblBilgiIcerik', ''); lblBilgiIcerik.Align = alClient; lblBilgiIcerik.WordWrap = True; lblBilgiIcerik.Margins.Left = 20; lblBilgiIcerik.Margins.Right = 20; lblBilgiIcerik.Margins.Top = 10; lblBilgiIcerik.Margins.Bottom = 10; lblBilgiIcerik.TextSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
btnBilgiKapat = Form1.AddNewProButton(pnlBilgi, 'btnBilgiKapat', 'Tamam'); btnBilgiKapat.Align = alBottom; btnBilgiKapat.Height = 50; btnBilgiKapat.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#22c55e'); btnBilgiKapat.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); btnBilgiKapat.clProSettings.FontSize = 16; btnBilgiKapat.clProSettings.IsRound = True; btnBilgiKapat.clProSettings.RoundHeight = 25; btnBilgiKapat.clProSettings.RoundWidth = 25; btnBilgiKapat.SetclProSettings(btnBilgiKapat.clProSettings); Form1.AddNewEvent(btnBilgiKapat, tbeOnClick, 'BilgiKapat');
tmrCanta = Form1.AddNewTimer(Form1, 'tmrCanta', 1000); tmrCanta.Enabled = False; Form1.AddNewEvent(tmrCanta, tbeOnTimer, 'CantaSureGuncelle');
MenuGoster; Form1.Run; } file:///C:/Users/musta/Downloads/DEPREM_OYUNLARI_v2%20%2810%29.tro" rel="nofollow - DEPREM_OYUNLARI_v2 (10).tro
|