thomasleroi Posté(e) le 28 mai 2008 Signaler Partager Posté(e) le 28 mai 2008 Bonjour, j'aimerais faire un skin que l'on peux prendre seulement si on est admin... Et je n'y arrive pas du tout. else if(gTeam[playerid] == TEAM_ADMINTMT) { SetPlayerColor(playerid,COLOR_VIOLET); // tmt admin } Je dois mettre quoi pour qu'il y est un auto-kick si un joueur non connecté en admin prennent le skin admin ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 28 mai 2008 Signaler Partager Posté(e) le 28 mai 2008 c'est pas dure ^^ if(IsPlayerAdmin[playerid] == 1) { le player se connecte comme il faut, puisque qu'il est admin ( == 1) Donc tu met un }else if(IsPlayerAdmin[playerid] == 0) { SendRconCommand( Kick); return 1; } Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 28 mai 2008 Auteur Signaler Partager Posté(e) le 28 mai 2008 (modifié) else if(gTeam[playerid] == TEAM_ADMINTMT) { SetPlayerColor(playerid,COLOR_VIOLET); // tmt admin } }else if(IsPlayerAdmin[playerid] == 0) { SendRconCommand( Kick); return 1; } Comme ça ? Je comprend pas trop comment le mettre... Modifié le 28 mai 2008 par thomasleroi Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
drag0n Posté(e) le 28 mai 2008 Signaler Partager Posté(e) le 28 mai 2008 if(IsPlayerAdmin[playerid] == 1) { SetPlayerColor(playerid,COLOR_VIOLET); // tmt admin } else if(IsPlayerAdmin[playerid] == 0) { SendRconCommand( Kick); return 1; } En clair, apparemment c'est ça. ( "else" tout court ça marche pas dans votre langage? ) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 28 mai 2008 Auteur Signaler Partager Posté(e) le 28 mai 2008 Oui c'est bien ce que j'avais fait... error 028: invalid subscript (not an array or too many subscripts): "IsPlayerAdmin" warning 215: expression has no effect error 001: expected token: ";", but found "]" error 029: invalid expression, assumed zero fatal error 107: too many error messages on one line Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 28 mai 2008 Signaler Partager Posté(e) le 28 mai 2008 (modifié) Si, "else" fonctionne aussi tout seul : else if(gTeam[playerid] == TEAM_ADMINTMT) { if(IsPlayerAdmin[playerid] == 1){ SetPlayerColor(playerid,COLOR_VIOLET); // tmt admin }else{ SendRconCommand( Kick); return 1; } } Modifié le 29 mai 2008 par superpompier Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 29 mai 2008 Auteur Signaler Partager Posté(e) le 29 mai 2008 Marche pas avec moi... :'( Tu peux me le mettre directement dans mon OnPlayerSpawn ? public OnPlayerSpawn(playerid) { if(gTeam[playerid] == TEAM_TMT) { SetPlayerColor(playerid,COLOR_VIOLET); // tmt } else if(gTeam[playerid] == TEAM_DVN) { SetPlayerColor(playerid,COLOR_BLACK); // dvn } else if(gTeam[playerid] == TEAM_POLICE) { SetPlayerColor(playerid,COLOR_BLUE); // flic } else if(gTeam[playerid] == TEAM_CIVIL) { SetPlayerColor(playerid,COLOR_YELLOW); // flic } GangZoneShowForPlayer(playerid, TMT, 0xFF000096); GangZoneShowForPlayer(playerid, DVN, 0x00000096); return 1; } Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 29 mai 2008 Signaler Partager Posté(e) le 29 mai 2008 (modifié) ok pas de prob, c'est déjà fait ^^ : public OnPlayerSpawn(playerid) { if(gTeam[playerid] == TEAM_TMT) { if(IsPlayerAdmin(playerid) == 1){ SetPlayerColor(playerid,COLOR_VIOLET); // tmt }else{ SendRconCommand("Kick"); return 1; } } else if(gTeam[playerid] == TEAM_DVN) { SetPlayerColor(playerid,COLOR_BLACK); // dvn } else if(gTeam[playerid] == TEAM_POLICE) { SetPlayerColor(playerid,COLOR_BLUE); // flic } else if(gTeam[playerid] == TEAM_CIVIL) { SetPlayerColor(playerid,COLOR_YELLOW); // flic } GangZoneShowForPlayer(playerid, TMT, 0xFF000096); GangZoneShowForPlayer(playerid, DVN, 0x00000096); return 1; } Voila ça devrait fonctionner mec ^^ A++ Bon jeu Sinon tu fera gaffe parce que, quand tu tape dans le jeu /rcon kick, bah ça kick tout les joueurs, et la comme on fait un SendRconCommand, j'ai peur que ça kick tout le monde si le player n'est pas admin et qu'il prend ce skin :s faut voir ^^ Modifié le 29 mai 2008 par superpompier Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 29 mai 2008 Auteur Signaler Partager Posté(e) le 29 mai 2008 Avec ça, sa ne kické pas un joueur non admin qui prenet le skin TMT. SendRconCommand("Kick"); Donc je les remplacé par : Kick(playerid); Et sa marche très bien ! Merci ! :frim: Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 29 mai 2008 Signaler Partager Posté(e) le 29 mai 2008 oui c'est ce a quoi j'ai pensé après, peut être avec le kick(playerid) m'enfin, ce qui compte c'est que tu est trouvé ça tout seul !!! Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 30 mai 2008 Auteur Signaler Partager Posté(e) le 30 mai 2008 Merci de t'on aide en tout cas... Mais j'ai encore besoin de toi ! Je cherche un FS sur google pour un Team Chat ("!" TEXTE) Mais c'est introuvable, ou je pourrais en trouver un ? Ou alors comment en faire un ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 30 mai 2008 Signaler Partager Posté(e) le 30 mai 2008 (modifié) Bon alors, je vais essayer de faire un code ^^ if(strcmp(cmdtext, "/!", true, 2) == 0){ new tmp[255]; new pName[MAX_PLAYER_NAME]; new tmpp[256]; new idx; tmp = strtok (cmdtext, idx); GetPlayerName(playerid, pName, sizeof(pName)); if (strlen (tmp) == 0) { SendClientMessage(playerid, COLOR_ORANGE, "Utilisation: /! [TEXT]"); return 1; } if (strlen (cmdtext[3]) != 0) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[playerid],COLOR_RED, tmpp); } return 1; } C'est bon ce code fonctionne ^^ Modifié le 30 mai 2008 par superpompier Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 30 mai 2008 Auteur Signaler Partager Posté(e) le 30 mai 2008 error 017: undefined symbol "name" error 017: undefined symbol "name" error 029: invalid expression, assumed zero Je met quoi pour definir "name" ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 30 mai 2008 Signaler Partager Posté(e) le 30 mai 2008 regarde plutôt le code que je viens de mettre a jour, il fonctionne ^^ Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 30 mai 2008 Signaler Partager Posté(e) le 30 mai 2008 (modifié) Je viens de remarquer que le Team Chat ne fonctionne pas pour toutes les teams, alors j'ai fais ça : if(strcmp(cmdtext, "/!", true, 2) == 0){ new tmp[255]; new pName[MAX_PLAYER_NAME]; new tmpp[256]; new idx; tmp = strtok (cmdtext, idx); GetPlayerName(playerid, pName, sizeof(pName)); if (strlen (tmp) == 0) { SendClientMessage(playerid, COLOR_ORANGE, "Utilisation: /! [TEXT]"); return 1; } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_T||TEAM_T_BOMB) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_T || TEAM_T_BOMB] ,COLOR_RED, tmpp); return 1; } } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_CT) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_CT],COLOR_BLUE, tmpp); return 1; } } Modifié le 30 mai 2008 par superpompier Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 31 mai 2008 Auteur Signaler Partager Posté(e) le 31 mai 2008 if(strcmp(cmdtext, "/!", true, 2) == 0){ new tmp[255]; new pName[MAX_PLAYER_NAME]; new tmpp[256]; new idx; tmp = strtok (cmdtext, idx); GetPlayerName(playerid, pName, sizeof(pName)); if (strlen (tmp) == 0) { SendClientMessage(playerid, COLOR_WHITE, "/! TEXT"); return 1; } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_TMT| TEAM-LEADERTMT) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_TMT || TEAM_LEADERTMT] ,COLOR_WHITE, tmpp); return 1; } } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_DVN) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_DVN || TEAM_LEADERDVN],COLOR_BLUE, tmpp); return 1; } } Bon je les modifié à ma guise mais j'ai des erreurs du genre : undefined symbol "classid" undefined symbol "pickupid" undefined symbol "SetPlayerClass" function "p01" is not implemented Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 31 mai 2008 Signaler Partager Posté(e) le 31 mai 2008 (modifié) ces erreurs ne viennent pas du code, il n'y a ni "classid" ni "pickupid" ni SetPlayerClass" dans ce code Soit c'est au-dessus, soit c'est en dessous (il n'y a pas trop le choix lol ) met les lignes sur ton code et sur les erreurs, c'est plus simple de voir ou elles sont edit : je viens de voir une erreur : if(gTeam[playerid] == TEAM_TMT| TEAM-LEADERTMT) met ça a la place : if(gTeam[playerid] == TEAM_TMT || TEAM-LEADERTMT) ^^ Modifié le 31 mai 2008 par superpompier Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 31 mai 2008 Auteur Signaler Partager Posté(e) le 31 mai 2008 ces erreurs ne viennent pas du code, il n'y a ni "classid" ni "pickupid" ni SetPlayerClass" dans ce code Soit c'est au-dessus, soit c'est en dessous (il n'y a pas trop le choix lol ) Les erreurs je les est seulemetn une fois que le code est ajouté... Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 31 mai 2008 Signaler Partager Posté(e) le 31 mai 2008 poste les avec le numéro des lignes et les lignes concernées Stp ^^ Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
thomasleroi Posté(e) le 31 mai 2008 Auteur Signaler Partager Posté(e) le 31 mai 2008 (modifié) if(strcmp(cmdtext, "/!", true, 2) == 0){ new tmp[255]; new pName[MAX_PLAYER_NAME]; new tmpp[256]; new idx; tmp = strtok (cmdtext, idx); GetPlayerName(playerid, pName, sizeof(pName)); if (strlen (tmp) == 0) { SendClientMessage(playerid, COLOR_WHITE, "/! TEXT"); return 1; } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_TMT|| TEAM-LEADERTMT) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_TMT || TEAM_LEADERTMT] ,COLOR_WHITE, tmpp); return 1; } } if (strlen (cmdtext[3]) != 0) { if(gTeam[playerid] == TEAM_DVN) { format(tmpp, sizeof(tmpp), "%s Team Chat: %s ", pName, cmdtext[3]); SendClientMessage(gTeam[TEAM_DVN || TEAM_LEADERDVN],COLOR_BLUE, tmpp); return 1; } } return 1; } SetPlayerClass(playerid, classid) { if(classid == 0) { gTeam[playerid] = TEAM_LEADERTMT; } else if(classid == 1) { gTeam[playerid] = TEAM_TMT; } else if(classid == 2) { gTeam[playerid] = TEAM_LEADERDVN; } else if(classid == 3) { gTeam[playerid] = TEAM_DVN; } else if(classid == 4) { gTeam[playerid] = TEAM_POLICE; } else if(classid == 5) { gTeam[playerid] = TEAM_CIVIL; } } public OnPlayerPickUpPickup(playerid, pickupid) { if (pickupid == p1) { SendClientMessage(playerid, COLOR_VIOLET, "Base : TMT"); SendClientMessage(playerid, COLOR_VIOLET, "Leader : Grenade"); } if (pickupid == p2) { SendClientMessage(playerid, COLOR_WHITE, "AMMU NATION"); SendClientMessage(playerid, COLOR_WHITE, "Chainsaw : 3.000$"); SendClientMessage(playerid, COLOR_WHITE, "Grenade : 5.000$"); SendClientMessage(playerid, COLOR_WHITE, "Flamethrower : 10.000$"); } if (pickupid == p3) { SendClientMessage(playerid, COLOR_WHITE, "Achat de Grenades pour 5.000$"); GivePlayerMoney(playerid, -5000); } if (pickupid == p4) { SendClientMessage(playerid, COLOR_WHITE, "Achat d'un Flamethrower pour 10.000$"); GivePlayerMoney(playerid, -10000); GivePlayerWeapon(playerid, 37,400); } if (pickupid == p5) { SendClientMessage(playerid, COLOR_WHITE, "Achat d'une Chainsaw pour 3.000$"); GivePlayerMoney(playerid, -3000); } if (pickupid == p6) { SendClientMessage(playerid, COLOR_BLACK, "Base : DVN"); SendClientMessage(playerid, COLOR_BLACK, "Leader : DarkMed"); } (476) : error 017: undefined symbol "TEAM" (500) : error 017: undefined symbol "SetPlayerClass" (502) : error 017: undefined symbol "classid" (506) : error 017: undefined symbol "classid" (510) : error 017: undefined symbol "classid" (514) : error 017: undefined symbol "classid" (518) : error 017: undefined symbol "classid" (522) : error 017: undefined symbol "classid" (530) : warning 217: loose indentation (530) : error 029: invalid expression, assumed zero (530) : error 004: function "OnPlayerPickUpPickup" is not implemented (533) : error 017: undefined symbol "pickupid" (539) : error 017: undefined symbol "pickupid" (547) : error 017: undefined symbol "pickupid" (553) : error 017: undefined symbol "pickupid" (560) : error 017: undefined symbol "pickupid" (566) : error 017: undefined symbol "pickupid" Et si j'enlève la commande "/!", il n'y a plus aucune erreur Modifié le 31 mai 2008 par thomasleroi Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
StAfF MaN Posté(e) le 31 mai 2008 Signaler Partager Posté(e) le 31 mai 2008 Trop bizarre .... Pour l'erreur rouge, tu as mis un tiret central du 6 au lieu du 8 ^^ ( - au lieu de _ ) Corrige déjà ça, c'est peut être l'erreur qui fait tout planter ^^ Sinon en haut de ton script tu ajoute un forward pour ton SetPlayerClass forward SetPlayerClass(playerid, classid) Sinon pour classid tu met new classid pareil pour pickupid new pickupid Corrige déjà l'erreur du "TEAM" et regarde le résultat, si il y a toujours les autres erreurs tu les corriges avec ce que je t'es dis Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.