Szerző Téma: sscanf segítség  (Megtekintve 860 alkalommal)

herban

  • Vendég
sscanf segítség
« Dátum: 2011. május 15. - 19:31:51 »
0 Show voters
Üdv.
A következõt sajnos nem tudom megcsinálni sscanf-al kérlek segítsen valaki.
 

if(strcmp(cmd, \"/gang\", true) == 0) {
    new tmp[256];
    new gangcmd, gangnum;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
   SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /gang [create/join/invite/quit] [name/number]\");
   return 1;
}
giveplayerid = strval(tmp);
if(strcmp(tmp, \"create\", true)==0)
    gangcmd = 1;
else if(strcmp(tmp, \"invite\", true)==0)
    gangcmd = 2;
else if(strcmp(tmp, \"join\", true)==0)
    gangcmd = 3;
else if(strcmp(tmp, \"quit\", true)==0)
    gangcmd = 4;
tmp = strtok(cmdtext, idx);
if(gangcmd < 3 && !strlen(tmp)) {
    if(gangcmd==0)
      SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /gang [create/join/invite/quit] [name/number]\");
   else if(gangcmd==1)
      SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /gang [create] [name]\");
   else if(gangcmd==2)
      SendClientMessage(playerid, COLOR_WHITE, \"USAGE: /gang [invite] [playerID]\");
   return 1;
}
//Create Gang//
if(gangcmd==1) {
    if(playerGang[playerid]>0) {
      SendClientMessage(playerid, COLOR_RED, \"You are already in a gang!\");
      return 1;
    }
   
   for(new i = 1; i < MAX_GANGS; i++) {
      if(gangInfo[0]==0) {
          //name gang
         format(gangNames, MAX_GANG_NAME, \"%s\", tmp);
         //Gang exists
         gangInfo[0]=1;
         //There is one member
         gangInfo[1]=1;
         //Gang color is player\'s color
         gangInfo[2]=playerColors[playerid];
         //Player is the first gang member
         gangMembers[0] = playerid;
         format(string, sizeof(string),\"You have created the gang \'%s\' (id: %d)\", gangNames, i);
         SendClientMessage(playerid, COLOR_GREEN, string);
         playerGang[playerid]=i;
         return 1;
      }
   }
   return 1;
//Join Gang//
} else if (gangcmd==3) {
       gangnum = gangInvite[playerid];
    if(playerGang[playerid]>0) {
      SendClientMessage(playerid, COLOR_RED, \"You are already in a gang!\");
      return 1;
    }
       if(gangInvite[playerid]==0) {
      SendClientMessage(playerid, COLOR_RED, \"You have not been invited to a gang.\");
      return 1;
   }
   if(gangInfo[gangnum][0]==0) {
      SendClientMessage(playerid, COLOR_RED, \"That gang does not exist!\");
      return 1;
   }
   if(gangInfo[gangnum][1] < MAX_GANG_MEMBERS) {
       new i = gangInfo[gangnum][1];
      
      gangInvite[playerid]=0;
      gangMembers[gangnum] = playerid;
       GetPlayerName(playerid, sendername, MAX_PLAYER_NAME);
      for(new j = 0; j < gangInfo[gangnum][1]; j++) {
         format(string, sizeof(string),\"%s has joined your gang.\", sendername);
         SendClientMessage(gangMembers[gangnum][j], COLOR_ORANGE, string);
      }
      gangInfo[gangnum][1]++;
      playerGang[playerid] = gangnum;
      SetPlayerColor(playerid,gangInfo[gangnum][2]);
      format(string, sizeof(string),\"You have joined the gang \'%s\' (id: %d)\", gangNames[gangnum], gangnum);
      SendClientMessage(playerid, COLOR_GREEN, string);
      return 1;
   }
   SendClientMessage(playerid, COLOR_RED, \"That gang is full.\");
   return 1;
//Invite to Gang//
} else if (gangcmd==2) {
       giveplayerid = strval(tmp);
   if(playerGang[playerid]==0) {
      SendClientMessage(playerid, COLOR_RED, \"You are not in a gang!\");
      return 1;
   }
//         if(gangMembers[playerGang[playerid]][0]!=playerid) {
//            SendClientMessage(playerid, COLOR_RED, \"You need to be the gang leader to send an invite.\");
//            return 1;
//         }
   if(IsPlayerConnected(giveplayerid)) {
      GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
      GetPlayerName(playerid, sendername, sizeof(sendername));
      format(string, sizeof(string),\"You have sent a gang invite to %s.\", giveplayer);
      SendClientMessage(playerid, COLOR_GREEN, string);
      format(string, sizeof(string),\"You have recieved a gang invite from %s to \'%s\' (id: %d)\", sendername, gangNames[playerGang[playerid]],playerGang[playerid]);
      SendClientMessage(giveplayerid, COLOR_GREEN, string);
      gangInvite[giveplayerid]=playerGang[playerid];
   } else
      SendClientMessage(playerid, COLOR_RED, \"No such player exists!\");
//Leave Gang//
} else if (gangcmd==4) {
    PlayerLeaveGang(playerid);
}
return 1;
}

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
sscanf segítség
« Válasz #1 Dátum: 2011. május 15. - 21:34:16 »
0 Show voters
http://sampforum.hu/index.php?topic=4400.60
Próbáld ezt. Bár ez olyan hülyén van megoldva, hogy azt, hogy mi mit csinál még nekem is gond értelmezni xD
( gang változókra gondolok )

herban

  • Vendég
sscanf segítség
« Válasz #2 Dátum: 2011. május 15. - 22:10:02 »
0 Show voters
Okés megoldottam
Kösz :D
Zárok!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal