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: IPhoneman96 - 2012. Május 05. - 09:13:18

Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 09:13:18
Üdv!
A problémám, hogy szeretnék egy olyan Cp-t csinálni ahol ha emberünk belemegy, rendõrt csinálunk belõle
hibák:
 
D:\\Program Files (x86)\\Rockstar Games\\GTA San Andreas\\szerver\\gamemodes\\SL.pwn(148) : error 017: undefined symbol \"gPlayerCPStatus\"
D:\\Program Files (x86)\\Rockstar Games\\GTA San Andreas\\szerver\\gamemodes\\SL.pwn(148) : warning 215: expression has no effect
D:\\Program Files (x86)\\Rockstar Games\\GTA San Andreas\\szerver\\gamemodes\\SL.pwn(148) : error 001: expected token: \";\", but found \"]\"
D:\\Program Files (x86)\\Rockstar Games\\GTA San Andreas\\szerver\\gamemodes\\SL.pwn(148) : error 029: invalid expression, assumed zero
D:\\Program Files (x86)\\Rockstar Games\\GTA San Andreas\\szerver\\gamemodes\\SL.pwn(148) : fatal error 107: too many error messages on one line

 
Cp megjelenítés:
 
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 1568.5374,-1691.9299,5.8906))
{
        SetPlayerCheckpoint(1568.5374,-1691.9299,5.8906, 2);
        gPlayerCPStatus[playerid] = 1;
}
DisablePlayerCheckpoint(playerid);
    gPlayerCPStatus[playerid] = 0;
return 1;

 
Cp mûködése:
 
public OnPlayerEnterCheckpoint(playerid)
{
    switch(gPlayerCPStatus[playerid])
    {
        case 0: return 1;
        case 1:
        {
             if(GetPlayerScore(playerid)<200)
   {
       SetPlayerSkin(playerid,280);
       SetPlayerTeamFromClass(playerid, classid);
       {
           if(GetPlayerSkin(playerid)==280)
           {
               gTeam[playerid] = TEAM_POLICE;
           }
       }
    }
   SendClientMessage(playerid, RED, \"Nics meg a kellõ pontod, Szükséges: 200\");
}
}
return 1;
}

 
Mod elejére:
 
new gPlayerCPStatus[MAX_PLAYERS];

 
OnPlayerConnect alá:
 
gPlayerCPStatus[playerid] = 0;
Cím: Checkpoint hiba
Írta: ZyZu. - 2012. Május 05. - 09:15:35
Szerintem elég ha new gPlayerCPStatus; írsz, probáld meg úgy..
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 09:20:11
Nem, mert az a lényege hogy lenulláza a változót ezáltal eltüntesse a Checkpointot, mert ha a változó 1 akkor lerakja az 1-es Cp-t, ha 2 akkor lerakja a 2-est és így tovább
Cím: Checkpoint hiba
Írta: ZyZu. - 2012. Május 05. - 09:50:27
Én megcsináltam és hibátlan a gTeamot  majd defináld
 

#include a_samp
new gPlayerCPStatus[MAX_PLAYERS];
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 1568.5374,-1691.9299,5.8906))
{
        SetPlayerCheckpoint(1568.5374,-1691.9299,5.8906, 4.0);
        gPlayerCPStatus[playerid] = 1;
}
DisablePlayerCheckpoint(playerid);
    gPlayerCPStatus[playerid] = 0;
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
    switch(gPlayerCPStatus[playerid])
    {
        case 0: return 1;
        case 1:
        {
             if(GetPlayerScore(playerid)<200)
   {
       SetPlayerSkin(playerid,280);
       {
           if(GetPlayerSkin(playerid)==280)
           {
             gTeam[playerid] = TEAM_POLICE;
           }
       }
    }
   SendClientMessage(playerid, -1, \"Nics meg a kellõ pontod, Szükséges: 200\");
}
}
return 1;
}
public OnPlayerConnect(playerid)
{
gPlayerCPStatus[playerid] = 0;
return 1;
}
 
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 10:07:39
De ez ugyan az mint az enyém, mit változtattál rajta?
Cím: Checkpoint hiba
Írta: Zsolesszka - 2012. Május 05. - 10:15:48
http://wiki.sa-mp.com/wiki/SetPlayerCheckpoint
Mintha hiányozna egy paraméter, (playerid).
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 10:40:46
Beírtam, ugyan az történt
Cím: Checkpoint hiba
Írta: TengeriMalac - 2012. Május 05. - 10:48:57
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 10.0, 1568.5374,-1691.9299,5.8906))
{
        SetPlayerCheckpoint(1568.5374,-1691.9299,5.8906, 4.0);
        gPlayerCPStatus[playerid] = 1;
}
DisablePlayerCheckpoint(playerid);
    gPlayerCPStatus[playerid] = 0;
return 1;
}

 
Ennél csak nekem tûnt fel az a hiba, hogy ha közel vagy, akkor megjeleníti a CPt, utána rögtön eltûnteti, mert nincs visszatérési érték ami megállítaná?
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 10:59:15
raktam return-már oda is, de a valós probléma még mindig fenn áll
Cím: Checkpoint hiba
Írta: ZyZu. - 2012. Május 05. - 14:23:34
Az enyémet nézzd meg változtattam rajta..
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 16:34:30
azt raktam be, de mit változtattál a színen kívül????????????
Cím: Checkpoint hiba
Írta: Gabor.. - 2012. Május 05. - 16:48:16
Szerintem zárási hiba lesz, ami a módodban/sctriptedben van. Az elõttelévõ sorokat, és az utánalévõ sorokat is bemásolnád?
Cím: Checkpoint hiba
Írta: ZyZu. - 2012. Május 05. - 16:53:49
Idézetet írta: IPhoneman96 date=1336228470\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21042\" data-ipsquote-contentclass=\"forums_Topic
azt raktam be, de mit változtattál a színen kívül????????????
 
Igen a színt is de nem csak azt figyeld meg a tied és az enyémet, egyépként ha ez nem megyen a modban van a hibád.
Cím: Checkpoint hiba
Írta: IPhoneman96 - 2012. Május 05. - 17:00:57
Gábor:
A problémás rész ez lehet, mert a többi sor elõtt üres eljárások vannak:
 
if(dini_Exists(PlayerInfo))
{
ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT,\"Login\",\"A fiókod regisztrálva van adj meg a jelszavad!\",\"Login\",\"Kilép\");
}
else
{
ShowPlayerDialog(playerid, 4, DIALOG_STYLE_INPUT,\"Regisztráció\",\"A fiókód nincs regisztrálva, kérlek adj meg egy jelszót\",\"Regist\",\"Kilép\");
}
gPlayerCPStatus[playerid] = 0;
return 1;
}
public OnPlayerDisconnect(playerid, reason)

 
Zyzu: Utálok barkobázni, mond el mit változtattál, nem mellesleg beraktam egy teljesen üres filterscript-be, és ugyan más hibákat írt, de akkor se volt jó
Cím: Checkpoint hiba
Írta: Gabor.. - 2012. Május 05. - 17:12:23
Hát ebbõl nem sokat tudtam meg. :D Dobj meg PM-ben Skype elérhetõséggel, és küld át, kijavítom. Vagy, ha nincs Skypeod, akkor töltsd fel valahova a módot/scriptet, és küld el PM-ben a linket.
Cím: Checkpoint hiba
Írta: staubka - 2012. Május 05. - 20:21:45
Véletlenül nem hiányzik a scriptbõl/modból egy olyan hogy:
 
new gPlayerCPStatus[MAX_PLAYERS];

 
?