GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Tomee - 2013. május 25. - 17:47:40

Cím: Halál utáni spawn
Írta: Tomee - 2013. május 25. - 17:47:40
Sziasztok!
Egy olyan problémám lenne, ami számomra elég érdekes, mert még ilyen nem volt.
Eddig tök simán megtudtam oldani, hogy ha meghal egy játékos akkor spawnolja ide vagy oda. Viszont most az a helyzet, hoogy ha meghal, bármit csinálok  a 0.0 0.0 0.0 koordinátán teszi le a játékost és a másik játékos CJ skinnel látja az illetõt, de az az illetõ saját magát a rendes skinébe.
Mi lehet a probléma?
Cím: Halál utáni spawn
Írta: norbi39 - 2013. május 25. - 18:02:34
Másold be az
public OnPlayerDeath-t 
Cím: Halál utáni spawn
Írta: Tomee - 2013. május 25. - 21:00:50
Ennél picit több van, de ez a lényege.
 
public OnPlayerDeath(playerid, killerid, reason)
{
    SetPVarInt(playerid, \"Meghalt\", 1 );
    return 1;
}

 
és innen az OnPlayerSpawn lesz
 
public OnPlayerSpawn(playerid)
{
if(!IsPlayerNPC(playerid))
{
if(GetPVarInt(playerid, \"Meghalt\") == 1)
{
    SetPVarInt(playerid, \"Meghalt\", 0 );
    switch(PlayerInfo[playerid][pCsapat])
   {
      case 1: SetPlayerPos(playerid, 154.2170,1849.8685,17.6406);
      case 2: SetPlayerPos(playerid, -1506.7885,1962.4524,48.4219);
   }
   return 1;
}
        switch(PlayerInfo[playerid][pCsapat])
{
   case 1: SetPlayerPos(playerid, 154.2170,1849.8685,17.6406);
   case 2: SetPlayerPos(playerid, -1506.7885,1962.4524,48.4219);
}
}
return 1;
}

 
Eleinte ez sem ilyen volt, még csak változó sem volt, hanem egybõl vittem a OnplayerSpawn-hoz mondván, úgyis leteszi. Hát nem
Cím: Halál utáni spawn
Írta: Szasza - 2013. május 25. - 21:51:18
HA
 
if(GetPVarInt(playerid, \"Meghalt\") == 1)
                {
                    SetPVarInt(playerid, \"Meghalt\", 0 );

 
akkor 0 rá állítód? ennek mi értelme? O.o

Dupla hozzászólás automatikusan összefûzve. ( 2013. május 25. - 21:52:36 )

Ui. akkor még is hogy spawnol ha nem halt még meg? nemértem most ezt a codot :D lehet én vagyok a hülye vagy nem az egészet másoltad be vagy nemtudom
Cím: Halál utáni spawn
Írta: Tomee - 2013. május 26. - 09:09:15
Ugye van a  OnPlayerRequestClass(playerid,classid)
 
public OnPlayerRequestClass(playerid,classid)
{
if(logged[ playerid ] == 0)
{
    //Beadja a dialogot hogy regisztrálni vagy egyéb
}
else SpawnPlayer(playerid);//Ha meghal akkor ez fog jönni.
return 0;
}

 
Szóval ha meghal a játékos akkor a Meghalt változó 1-lesz. És ha meghal akkor az  OnPlayerRequestClass-nál egybõl spawnolja a játékost és akkor innen jön a OnPlayerSpawn.
És ha meghal azon belül.
 

if(GetPVarInt(playerid, \"Meghalt\") == 1)
                {
                    SetPVarInt(playerid, \"Meghalt\", 0 );//Igen lenullázódik, mert nem lesz rá szükség.
                    switch(PlayerInfo[playerid][pCsapat])//És itt van a két spawn, ha az 1-s csapatban van akkor ide ha a 2-ben akkor oda
                        {
                                case 1: SetPlayerPos(playerid, 154.2170,1849.8685,17.6406);
                                case 2: SetPlayerPos(playerid, -1506.7885,1962.4524,48.4219);
                        }
                        return 1;
                }