Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Rossâ„¢ =] poslato Mart 02, 2013, 11:12:50 PRE PODNE

Naslov: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 11:12:50 PRE PODNE
Skripta koju koristim: Moja od 0
Detaljan opis problema: Ovako,imam normalan spawn lika kad dode na srw,ali imam i komandu za mjenjanje mape,i sad ja kad promjenim porta nas sve na svoja mjesta,i sad kad neko nekog ubije baci ga na 1. mapu umjesto da ostane na ovoj,nez kako to napravit da ostane na ovoj mapi koju pormjenim..
Dio skripte:
CMD:changemap1(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_LIGHTRED, "Nisi RCON Admin!");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(gTeam[i] == American) {
SetPlayerPos(playerid,-1181.3818,-1048.1707,129.2188);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Dead Zone",2500,3);
}
else if(gTeam[i] == German) {
SetPlayerPos(playerid,-1023.3991,-928.4197,129.2126);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Dead Zone",2500,3);
}
}
return 1;
}
CMD:changemap2(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_LIGHTRED, "Nisi RCON Admin!");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(gTeam[i] == American)
{
SetPlayerPos(i,-1372.0795,-474.8659,14.1776);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Die Hard",2500,3);
}
else if(gTeam[i] == German)
{
SetPlayerPos(i,-1329.9304,-558.8712,14.1823);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Die Hard",2500,3);
}
}
return 1;
}

To su komande za mjenjanje mape,al ne kontam zaš ne ostanu na toj mapi kad ih neko ubije
Neke slike/video za lakse dobivanje pomoci(neobavezno): ???
Naslov: Odg: [Pomoc] Spawn
Poruka od: MEDO poslato Mart 02, 2013, 11:32:30 PRE PODNE
Pa pod public OnPlayerSpawn napravis provjeru da li je igrac u mapi jedan i da ga spawna tamo
primjer
if(gTeam == American)
    {
    SetPlayerPos(playerid, X,Y,Z);
    }
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 13:18:48 POSLE PODNE
Citat: Teletabis poslato Mart 02, 2013, 11:32:30 PRE PODNE
Pa pod public OnPlayerSpawn napravis provjeru da li je igrac u mapi jedan i da ga spawna tamo
primjer
if(gTeam == American)
    {
    SetPlayerPos(playerid, X,Y,Z);
    }

Pa to imam,al ja kad promjenim mapu i ubijem se vratime na staru mapu,ja ocu da ostane na istoj dok ne promjenim
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 13:22:48 POSLE PODNE
Stavi u komandu za mjenjanje mape jednu varijablu u kojoj ces pamtiti koju mapu ima aktivnu i onda samo pod OnPlayerSpawn provjeris koju mapu ima aktivnu i tamo ga spawnas.
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 13:49:58 POSLE PODNE
Jel ima kaki slican tut za to da mi das?
Naslov: Odg: [Pomoc] Spawn
Poruka od: MEDO poslato Mart 02, 2013, 15:19:36 POSLE PODNE
napravi komandu da ih sviju izbacis iz mape i pokrenesdrugu  :P
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 15:36:18 POSLE PODNE
Stavis ovako komande:
CMD:changemap1(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_LIGHTRED, "Nisi RCON Admin!");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(gTeam[i] == American) {
SetPlayerPos(playerid,-1181.3818,-1048.1707,129.2188);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Dead Zone",2500,3);

playerMap[playerid] = 1;
}
else if(gTeam[i] == German) {
SetPlayerPos(playerid,-1023.3991,-928.4197,129.2126);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Dead Zone",2500,3);

playerMap[playerid] = 1;
}
}
return 1;
}
CMD:changemap2(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_LIGHTRED, "Nisi RCON Admin!");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(gTeam[i] == American)
{
SetPlayerPos(i,-1372.0795,-474.8659,14.1776);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Die Hard",2500,3);

playerMap[playerid] = 2;
}
else if(gTeam[i] == German)
{
SetPlayerPos(i,-1329.9304,-558.8712,14.1823);
GameTextForPlayer(i, "~b~New Map ~r~-~w~ Die Hard",2500,3);

playerMap[playerid] = 2;
}
}
return 1;
}


Definiras tu novu varijablu na pocetku moda:
new playerMap[MAX_PLAYERS] = {0};

I onda negdje pod OnPlayerSpawn callback:
if (playerMap[playerid] == 1)
{
    // Tu ide ako je 1. mapa, stvoris ga na prvoj mapi
}
else if (playerMap[playerid] == 2)
{
    // Tu ide ako je 2. mapa, stvoris ga na drugoj mapi
}
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 15:48:27 POSLE PODNE
Opet isto   :D kucam changemap porta me ljepo,ubijem se baci me na spawn stari,izbrisem spawn i opet isto
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 16:17:06 POSLE PODNE
Onda si nesto krivo napravio. Postaj to kako si ti napravio.
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 17:59:07 POSLE PODNE
Kako cu sada u call back ovaj,kako cu napravit da mi germance spavna na jednu stranu amere na drugu tako isto i u 2. mapi?  ::)
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 18:00:14 POSLE PODNE
Ne kuzim te.. Bolje objasni.
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 18:03:43 POSLE PODNE
Kako ne kontas,jbt kako cu da mi u 1. mapi se stvore germanci na jednoj strani a amerikanci na drugoj?
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 18:04:44 POSLE PODNE
Dodaj na pocetak moda:
new playerMap[MAX_PLAYERS] = {0};
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 18:05:28 POSLE PODNE
Citat: Joey_ poslato Mart 02, 2013, 18:04:44 POSLE PODNE
Dodaj na pocetak moda:
new playerMap[MAX_PLAYERS] = {0};
sad sam vidio da mi ne dostaje,izbriso sam slucajno
Citat: Loupa poslato Mart 02, 2013, 18:03:43 POSLE PODNE
Kako ne kontas,jbt kako cu da mi u 1. mapi se stvore germanci na jednoj strani a amerikanci na drugoj?
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 18:06:30 POSLE PODNE
Pa kada pokrenes tu mapu, pogledas koji je igrac tim i ovisno o tome ga spawnas. ::)
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 18:07:23 POSLE PODNE
Sad cu probat onda ovak

if (playerMap[playerid] == 1)
{
    if(gTeam == American)
    {
    SetPlayerPos(playerid, X,Y,Z);
    }
}
else if (playerMap[playerid] == 2)
{
   isto tak  i za germance
}
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 18:09:55 POSLE PODNE
Aha, na to si mislio, onda to ide ovak:
if (playerMap[playerid] == 1)
{
    if (gTeam[playerid] == American)
{
// Ako je Amerikanac u prvoj mapi
}
else if (gTeam[playerid] == German)
{
// Ako je Nijemac u prvoj mapi
}
}
else if (playerMap[playerid] == 2)
{
     if (gTeam[playerid] == American)
{
// Ako je Amerikanac u drugoj mapi
}
else if (gTeam[playerid] == German)
{
// Ako je Nijemac u drugoj mapi
}
}
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 18:11:49 POSLE PODNE
Ma skonto sam,sad idem test molim boga da radi  :D
Naslov: Odg: [Pomoc] Spawn
Poruka od: Rossâ„¢ =] poslato Mart 02, 2013, 18:15:03 POSLE PODNE
Radi,fala care zakon si  :P
Naslov: Odg: [Pomoc] Spawn
Poruka od: Joey_ poslato Mart 02, 2013, 18:17:36 POSLE PODNE
Ma nemas frke. :)

Rijesen problem, lock.