Aller au contenu
News ticker
  • Bienvenue sur le nouveau forum VeryGames
  • Welcome to the new VeryGames forum
  • VeryNews

    NeoXw

    Members
    • Compteur de contenus

      5
    • Inscription

    À propos de NeoXw

    • Date de naissance 09/09/2000

    NeoXw's Achievements

    Newbie

    Newbie (1/14)

    10

    Réputation sur la communauté

    1. Tu dois te tromper de personne je crois, fin bref ^^
    2. Merci Delachambre mais expliquer serait encore mieux ^^ Merci beaucoup Kriax <3
    3. Bonjour, J'ai un petit projet en cours de création, pour se faire j'ai besoin de prendre un joueur ct aléatoirement et le mettre en couleur (Tout est fait ça fonctionne bien), or, dans la compilation du plugin j'ai trois "tag mismatch" qui s'affichent et un rien peut me déranger, j'aimerai savoir ce que j'ai zappé, oublié : #pragma semicolon 1 #pragma tabsize 0 #pragma newdecls required #include <sourcemod> public void OnPluginStart() { RegConsoleCmd("sm_tryr", Cmd_Tryr); } int colorplayer = -1; public Action Cmd_Tryr(int client, int args) { colorplayer = GetRandomPlayer(); //Ligne 16 if(colorplayer > 0 && colorplayer <= GetMaxClients()) SetEntityRenderColor(colorplayer, 0, 0, 255, 255); } stock void GetRandomPlayer() { int PlayerList[MAXPLAYERS+1]; int PlayerCount; for(int i=1; i <= GetMaxClients(); i++) { if(IsClientConnected(i) && IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 3) PlayerList[PlayerCount++] = i; } if(PlayerCount == 0) return -1; //Ligne 33 return PlayerList[GetRandomInt(0, PlayerCount-1)]; //Ligne 35 } Test.sp(16) : warning 213: tag mismatch Test.sp(33) : warning 213: tag mismatch Test.sp(35) : warning 213: tag mismatch Quelqu'un peut me dire pourquoi j'ai ces trois petites lignes qui s'affichent ? Merci d'avance
    4. La partie que j'utilise pour le ban, c'est peut-être pas la meilleure manip au niveau du menu mais, j'débute comme tu le sais, et je fais avec ce que je sais. Le truc c'est que la maintenant en faite ça fonctionne très bien, je ne vois pas en quoi ça peut te servir, j'pense que le problème vient d'ailleurs public Plugin:myinfo = { name = "*~ Menu Surveillant ~*", author = "NeoX", description = "Menu pour les Surveillants Ba_Jail", version = "1.2", url = "" } #pragma semicolon 1 #pragma tabsize 0 #include <sourcemod> #include <smlib> #include <sourcebans> int BAN_RAISON; public OnPluginStart() { RegAdminCmd("sm_sadmin", Cmd_sAdminMenu, ADMFLAG_CUSTOM4, "Menu Admin Surveillants"); } public Action:Cmd_sAdminMenu(client, args) { sAdminMenu_princ(client); } //---------------------------------------------------------------------------------------------------------------------------------------------- public sAdminMenu_princ(client) { if(!IsClientValid(client)) return; new Handle:menu_princ = CreateMenu(Princ_Menu); SetMenuTitle(menu_princ, "Surveillant : %N", client); AddMenuItem(menu_princ, "", "Gestion des Joueurs"); SetMenuExitButton(menu_princ, true); DisplayMenu(menu_princ, client, MENU_TIME_FOREVER); } public Princ_Menu(Handle:menu, MenuAction:action, client, item) { if(action == MenuAction_Select) { switch(item) { case 0: { sAdminMenu_Joueurs(client); } } } else if(action == MenuAction_End) CloseHandle(menu); } public sAdminMenu_Joueurs(client) { if(!IsClientValid(client)) return; new Handle:menu_joueurs = CreateMenu(Joueurs_Menu); AddMenuItem(menu_joueurs, "", "Bannir un Joueur"); SetMenuExitButton(menu_joueurs, true); DisplayMenu(menu_joueurs, client, MENU_TIME_FOREVER); } public Joueurs_Menu(Handle:menu, MenuAction:action, client, item) { if(action == MenuAction_Select) { switch(item) { case 0: { new Handle:menu_banr = CreateMenu(Ban_Raison); SetMenuTitle(menu_banr, "Raison du ban :"); AddMenuItem(menu_banr, "", "Freekill"); AddMenuItem(menu_banr, "", "Insultes"); AddMenuItem(menu_banr, "", "Irrespect"); AddMenuItem(menu_banr, "", "Provocation"); AddMenuItem(menu_banr, "", "Non-Respect des règles"); AddMenuItem(menu_banr, "", "Spam Micro/Chat"); SetMenuExitButton(menu_banr, true); DisplayMenu(menu_banr, client, MENU_TIME_FOREVER); } } } else if(action == MenuAction_End) CloseHandle(menu); } //BAN---------------------------------------------------------- public Ban_Raison(Handle:menu, MenuAction:action, client, item) { if(action == MenuAction_Select) { BAN_RAISON = item; Ban_cJoueur(client); } else if(action == MenuAction_End) CloseHandle(menu); } public Ban_cJoueur(client) { new Handle:menu_banj = CreateMenu(Ban_Joueur); SetMenuTitle(menu_banj, "Bannir un Joueur :"); AddMenuItem(menu_banj, "", "Durée du ban : 10 Minutes.", ITEMDRAW_DISABLED); ChoosePlayer(menu_banj); SetMenuExitButton(menu_banj, true); DisplayMenu(menu_banj, client, MENU_TIME_FOREVER); } public Ban_Joueur(Handle:menu, MenuAction:action, client, player) { if(action == MenuAction_Select) { decl String:info[5]; GetMenuItem(menu, player, info, sizeof(info)); new client2 = StringToInt(info); switch(BAN_RAISON) { case 0: { SBBanPlayer(client, client2, 10, "[sAdmin] Freekill"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } case 1: { SBBanPlayer(client, client2, 10, "[sAdmin] Insultes"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } case 2: { SBBanPlayer(client, client2, 10, "[sAdmin] Irrespect"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } case 3: { SBBanPlayer(client, client2, 10, "[sAdmin] Provocation"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } case 4: { SBBanPlayer(client, client2, 10, "[sAdmin] Non-Respect des règles"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } case 5: { SBBanPlayer(client, client2, 10, "[sAdmin] Spam Micro/Chat"); PrintToChat(client, "[sM_sAdmin] Merci de contacter un admin pour un prolongement potentiel du ban."); } } } else if(action == MenuAction_End) CloseHandle(menu); } stock bool:IsClientValid(client, bool:checkConnected=true) { if(client <= 0 || client > MaxClients){ return false; } if(checkConnected && !IsClientConnected(client) || !IsClientInGame(client)){ return false; } if(IsClientSourceTV(client) || IsFakeClient(client)){ return false; } return true; } ChoosePlayer(Handle:menu) { decl String:name[MAX_NAME_LENGTH]; decl String:index[8]; new total = 0; for(new i=1; i<MaxClients; i++) { if(IsClientValid(i) && !Client_HasAdminFlags(i, ADMFLAG_KICK)) { GetClientName(i, name, sizeof(name)); IntToString(i, index, sizeof(index)); AddMenuItem(menu, index, name); total++; } } if(total == 0) AddMenuItem(menu, "", "Euuuuuuh ... Nan.", ITEMDRAW_DISABLED); return total; }
    5. (Je ne suis pas sûr de demander au bon endroit, mais autant essayer) Bonjour, Bonsoir, Codeur débutant, j'ai crée un menu admin (je sais qu'il y en a déjà un bla bla bla), avec des fonctions réduites pour justement un groupe d'admin, bref, j'ai utilisé la native "SBBanPlayer" du sourceban mais comme j'ai un ****** de clavier de caca, au niveau du temps, j'ai mis un 0 (que je n'avais pas vu avant de test) donc, permanent, problème lors du test : Le ban ne s'affiche pas sur le sourceban. Il n'est pas enregistré sur la base SQL. Il n'est pas enregistré sur le ftp (banned_user.cfg | banned_ip.cfg) Or, lorsque je reboot le serveur, le client en question n'est pas ban, ok, d'accord, dès qu'il se déconnecte et qu'il revient, il est ban, pourquoi pas, mais le ban ne s'affiche nul part ou il est caché à quelque part mais je ne le trouve pas. Autre observation, il y a 5 serveurs tous connectés au sourceban (3 CSS et 2 CSGO), ce que j'aime encore plus c'est qu'il est ban que d'un seul serveur (celui où le test à eu lieu), il n'a aucun soucis avec les autres serveurs, la connexion se fait comme si de rien n'était. J'aimerai comprendre le pourquoi du comment (maintenant tout de suite ça fonctionne bien, quand je ban quelqu'un depuis le menu, le ban s'affiche et s'enregistre, pas de bugs rien) et comment puis-je faire pour faire en sorte qu'il ne se fasse plus bannir par je ne sais quelle chose. Cordialement.
    ×
    ×
    • Créer...