Szerző Téma: Adminnévhez segítség!  (Megtekintve 625 alkalommal)

Adminnévhez segítség!
« Dátum: 2016. szeptember 09. - 21:05:31 »
0 Show voters
Sziasztok letöltöttem egy Admin név rendszert de van vele valami baj
 
I:\\GTA\\samp modok\\-\\filterscripts\\név.pwn(28) : error 047: array sizes do not match, or destination array is too small
I:\\GTA\\samp modok\\-\\filterscripts\\név.pwn(37) : error 047: array sizes do not match, or destination array is too small
I:\\GTA\\samp modok\\-\\filterscripts\\név.pwn(64) : error 047: array sizes do not match, or destination array is too small
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
3 Errors.

 
És nem tudom mi lehet a probléma
28. sor
   cmd = strtok(cmdtext, idx);

 
37. sor
   tmp = strtok(cmdtext, idx);

 
és a 64. sor
tmp = strtok(cmdtext, idx);

 
szóval minden hol ugyan az a hiba valaki tudna segíteni azt megköszönném!
 
// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#define FILTERSCRIPT
#include <a_samp>
#include <core>
#include <dini>
enum pInfo
{
    pAdmin,
    AdminName[24],
    PlayerName[24],
bool:HasSetAdminName,
OnDuty
}
new PlayerInfo[MAX_PLAYERS][pInfo];
public OnPlayerCommandText( playerid, cmdtext[] )
{
new
cmd[20],
tmp[128],
idx
;
cmd = strtok(cmdtext, idx);
if(!strcmp(cmd, \"/setadmin\", true))
{
    new
       a_string[65],
       name[MAX_PLAYER_NAME]
;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
   return SendClientMessage(playerid, -1, \"USAGE: /setadmin [level]\");
}
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
PlayerInfo[playerid][PlayerName] = name;
PlayerInfo[playerid][pAdmin] = strval(tmp);
format(a_string, 65, \"You are now admin level %d.\", strval(tmp));
SendClientMessage(playerid, -1, a_string);
return 1;
}
if(!strcmp(cmd, \"/setadminname\", true))
{
if(PlayerInfo[playerid][pAdmin] < 1)
{
    return SendClientMessage(playerid, -1, \"Nem vagy Admin!.\");
}
    new
   a_string[65]
;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
   return SendClientMessage(playerid, -1, \"USAGE: /setadmin [level]\");
}
strmid(PlayerInfo[playerid][AdminName], tmp, 0, 24);
        format(a_string, 65, \"Your admin name is %s.\", PlayerInfo[playerid][AdminName]);
        SendClientMessage(playerid, -1, a_string);
        PlayerInfo[playerid][HasSetAdminName] = true;
return 1;
}
if(!strcmp(cmd, \"/adminduty\", true))
{
if(!PlayerInfo[playerid][pAdmin])
   {
      return SendClientMessage(playerid, -1, \"Nem vagy admin\'.\");
   }
     if(PlayerInfo[playerid][OnDuty])
      {
   SetPlayerName(playerid, PlayerInfo[playerid][PlayerName]);
   PlayerInfo[playerid][OnDuty] = false;
}
else
{
    if(!PlayerInfo[playerid][HasSetAdminName])
    {
        return SendClientMessage(playerid, -1, \"Nem változtattad meg az adminnevet.\");
    }
   SetPlayerName(playerid, PlayerInfo[playerid][AdminName]);
   PlayerInfo[playerid][OnDuty] = true;
}
return 1;
}
return 0;
}

Adminnévhez segítség!
« Válasz #1 Dátum: 2016. szeptember 09. - 22:02:42 »
0 Show voters
Növeld a tömbök méretét.
Elsőnek a cmd tömböt -> new cmd[64]; vagy ha ugyan az növelgesd még.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal