Sistem bolnice

Započeo cofilinko
6. Avg. 2023.
422
pregleda
7
postova
cofilinko
4
Enforcer
6. Avg. 2023.
Problem(error/warning): Pokusavam da napravim sistem bolnice u kome se igrac stvara u bolnici nakon smrti sa timerom od 30 sekundi.  Kad stavim da se u OnPlayerDeath igrac stvori u bolnici, mene automatski nakon smrti stvara tamo, nema onu "animaciju" umiranja. Ako stavim neki timer od 2-3 sekunde, nakon smrti mi izlazi ono "Spawn" dugme bez te "animacije" smrti. Nakon sto timer istekne on me stvori u bolnici ali me non-stop teleportuje na odredjenu lokaciju u bolnici. Da li neko mozda zna najefikasniji nacin kreiranja ovog, nazovimo, sistema.
Deo skripte:
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
Slika/video ingame problema(obavezno ako je ingame problem):
realnaith
5
Crime Lord
6. Avg. 2023.
Postavi igracu kada umre animaciju i zatim posle odredjenog vremena putem timera (vreme kada je animacija zavrsila (po duzini koju ti zelis i animaciju koju ti zelis)) da se spawn u bolnici, takodje ga u bolnici mozes freez i dodeliti mu animaciju te nakon odredjenog vremena (timer again) unfreez i kill animaciju.

https://www.open.mp/bs/docs/scripting/functions/ApplyAnimation
https://www.open.mp/bs/docs/scripting/functions/SetTimerEx
cofilinko
4
Enforcer
6. Avg. 2023.
realnaith wrote on August 6, 2023, 10:45 pm:
Postavi igracu kada umre animaciju i zatim posle odredjenog vremena putem timera (vreme kada je animacija zavrsila (po duzini koju ti zelis i animaciju koju ti zelis)) da se spawn u bolnici, takodje ga u bolnici mozes freez i dodeliti mu animaciju te nakon odredjenog vremena (timer again) unfreez i kill animaciju.

Dodao sam OnPlayerDeath animaciju. Dodao u OnPlayerRequestClass takodje. Dodao sam timer u OnPlayerDeath. Sad mi problem stvara timer. Izlazi mi ovaj error
YSI Fatal Error: Out of code generation (CGen) space.  The current value of `CGEN_MEMORY` is `10000`, please recompile with a higher value (approximately 20000).

public OnPlayerDeath(playerid, killerid, reason)
{
    SetTimerEx("SpawnHospital", 3000, false, "i", playerid);
    ApplyAnimation(playerid,"PED","KO_skid_back",4.1,0,1,1,1,0,1);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
    ApplyAnimation(playerid,"PED","FLOOR_hit_f",4.1,0,1,1,1,0);
return 1;
}
forward SpawnHospital(playerid);
public SpawnHospital(playerid)
{
SetPlayerPos(playerid, 1144.3517,-1359.4625,1023.6382);
ClearAnimations(playerid);
return 1;
}
cofilinko
4
Enforcer
6. Avg. 2023.
cofilinko wrote on August 6, 2023, 10:55 pm:
Dodao sam OnPlayerDeath animaciju. Dodao u OnPlayerRequestClass takodje. Dodao sam timer u OnPlayerDeath. Sad mi problem stvara timer. Izlazi mi ovaj error
YSI Fatal Error: Out of code generation (CGen) space.  The current value of `CGEN_MEMORY` is `10000`, please recompile with a higher value (approximately 20000).

public OnPlayerDeath(playerid, killerid, reason)
{
    SetTimerEx("SpawnHospital", 3000, false, "i", playerid);
    ApplyAnimation(playerid,"PED","KO_skid_back",4.1,0,1,1,1,0,1);
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
    ApplyAnimation(playerid,"PED","FLOOR_hit_f",4.1,0,1,1,1,0);
return 1;
}
forward SpawnHospital(playerid);
public SpawnHospital(playerid)
{
SetPlayerPos(playerid, 1144.3517,-1359.4625,1023.6382);
ClearAnimations(playerid);
return 1;
}

Resen problem. Definisao sam CGEN_MEMORY na 20000 i to se resilo ali evo ga glavni problem...
https://streamable.com/ksrj8i
realnaith
5
Crime Lord
7. Avg. 2023.
Zasto koristis OnPlayerRequestClass ?
Razmisli malo bolje, pogledaj malo bolje.
Uz to ne vidim nigde da igraca postavljas na poziciju u bolnicu...
cofilinko
4
Enforcer
7. Avg. 2023.
realnaith wrote on August 7, 2023, 12:01 am:
Zasto koristis OnPlayerRequestClass ?
Razmisli malo bolje, pogledaj malo bolje.
Uz to ne vidim nigde da igraca postavljas na poziciju u bolnicu...

Izbrisao sam ovo iz OnPlayerRequestClass i na prvo testiranje je radilo normalno, ali kad sam restartovao server problem se opet pojavljuje.
Inace evo kad funkcija timera da kad istekne da postavi poziciju igracu na odredjeno mesto u bolnici.

forward SpawnHospital(playerid);
public SpawnHospital(playerid)
{
SetPlayerPos(playerid, 1144.3517,-1359.4625,1023.6382);
ClearAnimations(playerid);
return 1;
}
cofilinko
4
Enforcer
7. Avg. 2023.
realnaith wrote on August 7, 2023, 12:01 am:
Zasto koristis OnPlayerRequestClass ?
Razmisli malo bolje, pogledaj malo bolje.
Uz to ne vidim nigde da igraca postavljas na poziciju u bolnicu...

Reseno sve. Izbrisao animaciju iz OnPlayerRequestClass. Umesto SetPlayerPos sam postavio SetSpawnInfo. Stavio sam takodje da se timer zaustavlja kad se igrac spawna. U slucaju da sam nesto zaboravio da dodam, pisi mi u PP.
Hvala ti.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha