GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: inbox le 14 Décembre 2008, 16:04:52

Titre: Le Switch (Les cases)
Posté par: inbox le 14 Décembre 2008, 16:04:52
Bonjour,

Savez vous pourquoi je ne peux pas mettre un mot après case ? au lieu de "case 1: {"
Je voudrais que mes cases se nomme en mot car c'est plus facile pour moi pour appeler la case avec un autre code spécial pour un checkpoint par exemple

Si je fait "case Type1: {" il me dit comme erreur
error 008: must be a constant expression; assumed zero

Se qui est normal car lui il veut faire avec des chiffres "case 1:{ et case 2: { etc..."

#define CHECK1 0
#define CHECK2 1
new Check1;
new Check2;
  switch (playerid) {
  case Type1: {
          SendClientMessage(playerid, COLOR_YELLOW, "* Case N° 1.");
  }
      case Type2: {
  SendClientMessage(playerid, COLOR_YELLOW, "* Case N° 2.");
          }
          }
          return 1;
          }

Pouvez vous m'aider s'il vous plait ?

Merci
Cordialement,
Titre: Re : Le Switch (Les cases)
Posté par: garderer le 14 Décembre 2008, 17:03:57
http://pastebin.com/f5a376120 (http://pastebin.com/f5a376120)

Voila comment doit fonctioné les case le meuilleur c'est sous variable
Titre: Re : Le Switch (Les cases)
Posté par: inbox le 14 Décembre 2008, 19:47:08
Bonsoir,

Merci pour ton aide ca marche très bien :)

cordialement,
Titre: Re : Le Switch (Les cases)
Posté par: S!m le 14 Décembre 2008, 22:06:31
Salut,

si tu désire faire un truc du genre, si son nom est un tel, on fais une action etc....

je crois qu'il faut faire comme ça:

          GetPlayerName(playerid,name,sizeof(name));
  switch (name) {
  case "Admin": {
          SendClientMessage(playerid, COLOR_YELLOW, "* Case N° 1.");
  }
      case "Type2": {
  SendClientMessage(playerid, COLOR_YELLOW, "* Case N° 2.");
          }
          }
          return 1;
          }

++Sim++