Szerző Téma: Koporsó a player alá  (Megtekintve 1527 alkalommal)

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Dátum: 2011. május 22. - 17:43:53 »
0 Show voters
Sziasztok! Írtam pár sort, csak enm mûködik xD
íme:
[pawn]
new koporso;
forward koporsooff();
public OnPlayerDeath(playerid, killerid, reason)
{
new Float:pPos[3];
GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
koporso = CreateDynamicObject(2896, pPos[0], pPos[1], pPos[2],0 ,0 ,0);
SetTimerEx(\"koporsooff\", 2000, 0, \"i\", playerid);
SetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]+2);
return 1;
}
public koporsooff()
{
DestroyDynamicObject(koporso);
}
[/pawn]
Semmi hibát nem ír, csak nem rakja le a koporsót, ha meghalok xd. Remélem tudtok segíteni! A válaszokat elõre is köszönöm!

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Koporsó a player alá
« Válasz #1 Dátum: 2011. május 22. - 17:54:26 »
0 Show voters
Miért használod a SetTimerEx függvényt, ha a meghívott eljárásnak nincs paramétere?
Valószínûleg a probléma az, hogy mire megjelenne a koporsó már törlöd is (2 másodperc múlva)

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #2 Dátum: 2011. május 22. - 18:00:03 »
0 Show voters
próbáltam 6 és 10 másodperces intervallummal is :D

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Koporsó a player alá
« Válasz #3 Dátum: 2011. május 22. - 18:08:40 »
0 Show voters
Próbáld ki egy parancs alatt.

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #4 Dátum: 2011. május 22. - 18:19:10 »
0 Show voters
parancsnál: feldob, de valamiért az objectet nem teszi le   :(
 
koporso = CreateDynamicObject(2896, pPos[0], pPos[1], pPos[2],0 ,0 ,0);

 
valami ötlet? :(

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Koporsó a player alá
« Válasz #5 Dátum: 2011. május 22. - 18:46:58 »
0 Show voters
Próbáld sima objektummal.

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #6 Dátum: 2011. május 22. - 18:56:04 »
0 Show voters
ha ki veszem az idõzítõt, akkor lerakja a koporsót (próbáltam SetTimert és a SetTimerEx-et is, egyik sem ment. :( )

Nem elérhető Stray

  • 617
    • Profil megtekintése
Koporsó a player alá
« Válasz #7 Dátum: 2011. május 22. - 20:32:48 »
0 Show voters
[pawn]new koporso[MAX_PLAYERS];
forward koporsooff(playerid);
public OnPlayerDeath(playerid, killerid, reason)
{
new Float:pPos[3];
GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
koporso[playerid] = CreateDynamicObject(2896, pPos[0], pPos[1], pPos[2],0 ,0 ,0);
SetTimerEx(\"koporsooff\", 2000, 0, \"i\", playerid);
SetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]+2);
return 1;
}
public koporsooff(playerid)
{
DestroyDynamicObject(koporso[playerid]);
}[/pawn]

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #8 Dátum: 2011. május 22. - 20:34:45 »
0 Show voters
próbáltam ;-) fail nem jó nem megy így sem XD azért köszönöm a válaszokat, remélem, hogy majd esetleg holnap kapok egy jó megoldást! :)

Koporsó a player alá
« Válasz #9 Dátum: 2011. május 22. - 20:44:02 »
0 Show voters
Idézetet írta: Epsilon date=1306082818\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"8274\" data-ipsquote-contentclass=\"forums_Topic
Próbáld sima objektummal.
 
Ott a válasz egyébként.
Ha streamert használsz és azt igen, akkor amíg a játékos nincs lespawnolva nem fogja megjeleníteni az objectet, valószínûleg.
Esetleg még próbáld meg az object létrehozása után beilleszteni e két sor valamelyikét.
 

Streamer_Update(playerid);
Streamer_UpdateEx(playerid, pPos[0], pPos[1], pPos[2]);

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #10 Dátum: 2011. május 22. - 21:12:39 »
0 Show voters
sima CreateObject -tel is próbáltam, azzal is ugyan ez a hiba :/

Nem elérhető ►ѕтa

  • 2016
  • Newbie
    • Profil megtekintése
Koporsó a player alá
« Válasz #11 Dátum: 2011. május 25. - 13:25:24 »
0 Show voters
Remélem mûködik.
 

#include <a_samp>
new halottak = 0;
new object[100];
new Text3D:DText[100];
new objectje[MAX_PLAYERS], dtextje[MAX_PLAYERS];
public OnFilterScriptExit()
{
for(new i = 0; i < halottak; i++)
{
    DestroyObject(object);
    Delete3DTextLabel(DText);
}
}
public OnPlayerDeath(playerid, killerid, reason)
{
halottak++;
new str[128], y, m, d, h, m2, s;
getdate(y,m,d);
gettime(h,m2,s);
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
object[halottak] = CreateObject(2896, X,Y,Z-0.5, 0.0, 0.0, 0.0, 300.0);
format(str, 128, \"Itt nyugszik %s.\\nMeghalt: %d. %d. %d. %d:%d:%d\\nNyugodjon békében!\", pName(playerid), y, m, d, h, m2, s);
DText[halottak] = Create3DTextLabel(str, 0x00FFFFAA, X, Y, Z+0.75, 30, 0, 0);
objectje[playerid] = halottak;
dtextje[playerid] = halottak;
format(str, 128, \"%s meghalt! Már %d halottunk van!\", pName(playerid), halottak);
SendClientMessage(playerid, 0x00FF00AA, str);
if(halottak = 100)
{
for(new i = 0; i < 100; i++)
{
   DestroyObject(object);
   Delete3DTextLabel(DText);
}
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
DestroyObject(object[objectje[playerid]]);
Delete3DTextLabel(DText[dtextje[playerid]]);
return 1;
}
pName(playerid)
{
new name[24];
GetPlayerName(playerid, name, 24);
return name;
}

 
e: hiba javítva
« Utoljára szerkesztve: 2011. május 25. - 17:08:04 írta ►ѕтaЯ◄ »

Nem elérhető smart

  • 136
    • Profil megtekintése
Koporsó a player alá
« Válasz #12 Dátum: 2011. május 25. - 18:17:49 »
0 Show voters
hát ezt már végképp nem értem :( még mindig nem rakja le a koporsót. :( :( :( :(
E: Megoldódott zárok!
« Utoljára szerkesztve: 2011. május 27. - 20:51:13 írta smart »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal