Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-05-22, 23:53


Szimwu







Wiek: 33
Na forum: 4906 dni
Posty: 65

Piwa: 290

Respekt: 70

Witam serdecznie, jestem nowy w tych klockach dopiero ucz? si? pisa? skrypty i zacz??em sobie patrze? co i jak.

A wi?c mam problem z BW na skrypcie o nazwie Home-RP, i mam owy problem:

Doda?em sobie par? informacji do pInfo i oczywi?cie one dzia?aj? jak nale?y, oraz zmieni?em SSCANF na najnowszy i oczywi?cie STREAMER.

Nie wiem czemu, ale po zabiciu przyk?adowo mnie, spawnuje si? w niebie, a je?eli zabije ja innego gracza on spawnuje si? normalnie tam gdzie zgin?. Problemem jest r?wnie? to ?e pr?bowa?em zmienia? to na r??ne sposoby i nawet wgra?em stary honest'owski system BW i dzia?a tak samo czy mo?ecie mi powiedzie? co mo?e by? nie tak?
Dodam to i? pracuje na najnowszym SA-MP z najnowszymi INCLUDE wrzuconymi w?a?nie z folderu serwera SAMP

Oto kod tego oto BW:

OnPlayerSpawn:
Kod:


OnPlayerDeath:
Kod:


Public TimerCoMinute

Kod:


Bardzo bym prosi? o pomoc.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 08:07


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 11:02


Szimwu







Wiek: 33
Na forum: 4906 dni
Posty: 65

Piwa: 290

Respekt: 70

"IgrexolonO" napisał/a:

http://wiki.sa-mp.com/wiki/SetSpawnInfo

+

http://wiki.sa-mp.com/wiki/SpawnPlayer


Zastosowa?em to w ten spos?b, wklei?em to do OnPlayerSpawn, lecz jest nadal ten sam b??d.

Kod:


if(PlayerInfo[playerid][pBW]>=1)
{
SetSpawnInfo( playerid, 0, PlayerInfo[playerid][pSkin], PlayerInfo[playerid][pPosX],PlayerInfo[playerid][pPosY],PlayerInfo[playerid][pPosZ], 269.15, 0, 0, 0, 0, 0, 0 );
//SetPlayerPos(playerid,PlayerInfo[playerid][pPosX],PlayerInfo[playerid][pPosY],PlayerInfo[playerid][pPosZ]);
SetPlayerInterior(playerid,PlayerInfo[playerid][pInt]);
SetPlayerVirtualWorld(playerid,PlayerInfo[playerid][pVir]);
TogglePlayerControllable(playerid,0);
GameInfo(playerid,"~r~masz bw...",1);
SetTimerEx("Animka",1000,0,"dd",playerid,1);
return 1;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 12:14


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Powiniene? u?y? tych funkcji w publicu OnPlayerDeath. W OnPlayerSpawn nie powiniene? u?ywa? SetSpawnInfo do ustawiania pozycji gracza. U?ywaj funkcji bezpo?redniego ustawiania pozycji tylko w przypadkach przenoszenia gracza/spawnowania go przy po??czeniu.

Gdybym by? w domu i mia? swoje pliki, to pom?g?bym Ci teraz, ale niestety tam mnie nie ma.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 17:50


Szimwu







Wiek: 33
Na forum: 4906 dni
Posty: 65

Piwa: 290

Respekt: 70

"IgrexolonO" napisał/a:

Powiniene? u?y? tych funkcji w publicu OnPlayerDeath. W OnPlayerSpawn nie powiniene? u?ywa? SetSpawnInfo do ustawiania pozycji gracza. U?ywaj funkcji bezpo?redniego ustawiania pozycji tylko w przypadkach przenoszenia gracza/spawnowania go przy po??czeniu.

Gdybym by? w domu i mia? swoje pliki, to pom?g?bym Ci teraz, ale niestety tam mnie nie ma.


Niestety pr?bowa?em na r??ne sposoby i nadal nie potrafi? tego zrobi?, niby funkcja ta si? wykonuje, gdy? ustawi?em SendClientMessage, lecz spawnuje nadal na jak?? pozycje 0, 0, 0.

Teraz usun??em BW ca?kowicie i spr?buje zrobi? jeszcze raz od nowa.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 20:42


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Ah, tak. OnPlayerDeath jest ***** w tym przypadku. Masz kod z mojej mapy, mo?e sobie co? w niej ciekawego wykminisz.

Kod:

public OnPlayerDeath(playerid, killerid, reason)
{
if(playerInfo[playerid][loggedIn] == false) return printf("%s OnPlayerDeath non logged in has been detected.", pNameW(playerid)), 0;

GetPlayerPos(playerid, playerInfo[playerid][lastPos][0], playerInfo[playerid][lastPos][1], playerInfo[playerid][lastPos][2]);
GetPlayerFacingAngle(playerid, playerInfo[playerid][lastPos][3]);
playerInfo[playerid][lastPosInt] = GetPlayerInterior(playerid);
playerInfo[playerid][lastPosVW] = GetPlayerVirtualWorld(playerid);

SetSpawnInfo(playerid, 0, playerInfo[playerid][skin], playerInfo[playerid][lastPos][0], playerInfo[playerid][lastPos][1], playerInfo[playerid][lastPos][2], playerInfo[playerid][lastPos][3], 0, 0, 0, 0, 0, 0);
SpawnPlayer(playerid);

SetTimerEx("returnClientState", 750, false, "i", playerid);

ApplyAnimation(playerid, "PED", "FLOOR_hit", 4.1, 0, 1, 1, 1, 1);

TextDrawShowForPlayer(playerid, redaBeWu);

setPlayerHealthEx(playerid, 75.0);
return 1;
}


+

Kod:

public returnClientState(pid)
{
Attach3DTextLabelToPlayer(playerInfo[pid][nickLabel], pid, 0.0, 0.0, 0.3);
setPlayerSkinEx(pid, playerInfo[pid][skin], false);
setPlayerMoneyEx(pid, playerInfo[pid][money]);
SetPlayerPos(pid, playerInfo[pid][lastPos][0], playerInfo[pid][lastPos][1], playerInfo[pid][lastPos][2]), SetPlayerFacingAngle(pid, playerInfo[pid][lastPos][3]);
SetPlayerInterior(pid, playerInfo[pid][lastPosInt]);
SetPlayerVirtualWorld(pid, playerInfo[pid][lastPosVW]);

SetPlayerSkillLevel(pid, WEAPONSKILL_PISTOL, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_PISTOL_SILENCED, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_DESERT_EAGLE, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_SHOTGUN, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_SAWNOFF_SHOTGUN, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_SPAS12_SHOTGUN, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_MICRO_UZI, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_MP5, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_AK47, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_M4, 1);
SetPlayerSkillLevel(pid, WEAPONSKILL_SNIPERRIFLE, 1);

updatePlayerSpecInfo(pid);
return 1;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-23, 23:58


Szimwu







Wiek: 33
Na forum: 4906 dni
Posty: 65

Piwa: 290

Respekt: 70

Teraz mam tak:

OnPlayerDeath:
Kod:

public OnPlayerDeath(playerid, killerid, reason)
{
GetPlayerPos(playerid, PlayerInfo[playerid][pPosX], PlayerInfo[playerid][pPosY], PlayerInfo[playerid][pPosZ]);
PlayerInfo[playerid][pBW] = 5;
ZapiszKonto(playerid);
return 1;
}


OnPlayerSpawn
Kod:

if(PlayerInfo[playerid][pBW] >= 1)
{
SetPlayerInterior(playerid,PlayerInfo[playerid][pInt]);
SetPlayerVirtualWorld(playerid,PlayerInfo[playerid][pVir]);
SetSpawnInfo(playerid, 0, PlayerInfo[playerid][pSkin], PlayerInfo[playerid][pPosX], PlayerInfo[playerid][pPosY], PlayerInfo[playerid][pPosZ], 0, 0,0,0,0,0,0);
TogglePlayerControllable(playerid,0);
GameInfo(playerid,"~r~Aktualnie posiadasz BW...",1);
SetTimerEx("Animka",1000,0,"dd",playerid,1);
return 1;
}


I teraz teleportuje mnie na pozycje, taka jak jest w hone?cie, a je?eli nie ma return 1; to jest okey, lecz czyta przez chwil? TogglePlayerControllable(playerid,0); i a potem wy??cza si? i mog? normalnie si? porusza? lecz jest niby BW i mam odliczanie czasu BW: czas

OnGameModeInit
Kod:

AddPlayerClass(0, 1958.33, 1343.12, 15.36, 269.15, 26, 36, 28, 150, 0, 0);


A oto ca?y m?j OnPlayerSpawn:
http://pastebin.com/Jfgrrkzv

Nie pojmuje z lekka tego ;/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-24, 07:20


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Ustaw timer, tak samo jak ja returnClientState.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-24, 16:10


Szimwu







Wiek: 33
Na forum: 4906 dni
Posty: 65

Piwa: 290

Respekt: 70

Poradzi?em sobie bez timera. Ale dzi?ki za ch?ci :)

Postaw piwo autorowi tego posta
 

 
Tagi: nie :: spawnuje :: innych :: graczy
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » [GF] BW nie spawnuje innych graczy Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku