Jump to content
View in the app

A better way to browse. Learn more.

Forum Supreme-Elite

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Pick

Accustomed
  • Joined

  • Last visited

Everything posted by Pick

  1. T'as deux trains de retard toi, ca fait 5 mois qu'il l'a sortit celle la XD
  2. Pick replied to Skyman's topic in Autres
    188.165.114.73:27018 Si vous remarquez des bugs, des idées pour la config, maps, postez ici... Pour l'instant le serveur est en test.
  3. Pick replied to Skyman's topic in Autres
    J'ai commencé à faire des test et ça chie complètement XD Pas mis à jour depuis 3 ans, je doute fort que ça marchera, surtout avec le passage sous orangebox,enfin je reverrais ça plus en détail plus tard.
  4. Vous pouvez faire une soirée predator.
  5. On a un problème sur l'escape et le barricade pour le VIP, la manière que l'on avait utilisé sur le serveur de test ne marche pas sur ces serveurs et ont cherche pourquoi ainsi qu'une autre façon de procédé depuis une semaine...
  6. T'inquiètes ca se soigne bien, il suffit de recompilé le kernel
  7. Sur CSS il y a toujours une équipe qui gagne le round (même sur le Jail avec le forcetimelimit ce sont les CT qui gagne à la fin du roundtime)
  8. Pick replied to Skyman's topic in Autres
    Le mod zombie horde n'est plus à jour depuis 2007 ( http://www.zombiehorde.com/ ) , donc il doit il y avoir pas mal de bug, mais je suis pas contre
  9. C'est peu être un gros noob mais quand même il à réussi faire une page de phishing et niqué qlq pyj, donc des comptes steam il en a plusieurs...
  10. MwA Jconay 1 Fai11e qui permet de HaCk3D les GenS 1RL ! ! ! Attention Hack Croll l33t jla Ven 150 000 € sur mon comptye allopass (envoyé moi les code en MP) §§§§
  11. Le Oui VIP est entre le oui normal et le oui Admin.
  12. 2€ par mois normalement, la liste de tout les privilèges et des skins détaillés sera mise en même temps que le VIP sera lancé, donc d'ici un ou deux jours.
  13. Non, non, les VIP n'auront aucun droit d'administration à part le slot reserved étant donné qu'il n'y aura pas de sélection pour être VIP. Puis si des étranger flood micro -> votemute ou échap=>liste des joueurs=>mute joueur en question.
  14. Ca y est déjà .
  15. Je viens de finir pour le ZE donc ce sera 150 HP, no fall damage, vitesse : 8 (0 par défault et 10 pour les admin), pour le saut c'est pareil que les admins. Non pas pour le moment, tout sera lancé ensemble d'ici peu.
  16. Lol, je doutes fort que tu sois le leader... Et puis gsk2.org et revenu une nuit et depuis, il est down XD, on le reverra peut-être de nouveau dans 3 mois... Mais ne t'inquiétes pas vous avez un nouveau site maintenant http://gsk2.net :pardon: Au fait: En attendant notre site marche toujours mais pas le votre.
  17. PFFFFFF sale noob.........
  18. Tu es hébergé ou ?
  19. Source: http://www.sourcebans.net/faq
  20. Les deux ne mérite pas d'être acheter surtout que ya pas de multi donc télécharge les au pire :whistling:
  21. La connection entre ton serveur de jeu et ta base de donnée est défectueuse va voir si tu as des logs dans cstrike/addons/sourcemod/logs, tu as bien édité le database.cfg dans cstrike/addons/sourcemod/configs ?
  22. Pick replied to romainf's topic in Espace Détente/Bar
    Ah ouais quand même...
  23. Euh j'en vois 6 moi^^
  24. Je ne m'y connais pas beaucoup en codage sourcemod mais à partir du *.sp: #include <sourcemod> #include <adminmenu> #include <sdktools> #define STORED_ENTRIES 100 #define PLUGIN_VERSION "1.03" public Plugin:myinfo = { name = "Ban disconnected players", author = "mad_hamster", description = "Lets you ban players that recently disconnected", version = PLUGIN_VERSION, url = "http://pro-css.co.il" }; new Handle:hTopMenu = INVALID_HANDLE; static String:disconnected_player_names [sTORED_ENTRIES][32]; static String:disconnected_player_authids[sTORED_ENTRIES][32]; static disconnected_player_times [sTORED_ENTRIES]; public OnPluginStart() { CreateConVar("ban_disconnected_ver", PLUGIN_VERSION, "", FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY); RegAdminCmd("sm_bandisconnected", BanDisconnected, ADMFLAG_BAN); HookEvent("player_disconnect", OnEventPlayerDisconnect); new Handle:topmenu; if (LibraryExists("adminmenu") && ((topmenu = GetAdminTopMenu()) != INVALID_HANDLE)) OnAdminMenuReady(topmenu); } public Action:OnEventPlayerDisconnect(Handle:event, const String:name[], bool:dont_broadcast) { decl String:steam_id[32]; GetEventString(event, "networkid", steam_id, sizeof(steam_id)); // Ignore if authid does not start with STEAM_ (possibly bot), or is identical to the last // disconnected steam id, but only if it occured at the same second (duplicate event) // Note: We can't resolve the client index from the event's userid and check IsFakeClient(), // since the client may have disconnected already under some HL2 games. if ( strncmp(steam_id, "STEAM_", 6) == 0 && ( queue_get_size() == 0 || ( strcmp(steam_id, disconnected_player_authids[queue_translate_pos(queue_get_size()-1)]) != 0 || disconnected_player_times[queue_translate_pos(queue_get_size()-1)] != GetTime()))) { new pos = queue_push(); strcopy(disconnected_player_authids[pos], sizeof(disconnected_player_authids[]), steam_id); GetEventString(event, "name", disconnected_player_names[pos], sizeof(disconnected_player_names[])); disconnected_player_times[pos] = GetTime(); } return Plugin_Continue; } public Action:BanDisconnected(client, args) { if (args < 2 || args > 3) ReplyToCommand(client, "[sM] Usage: sm_bandisconnected <\"steamid\"> <minutes|0> [\"reason\"]"); else { decl String:steamid[20], String:minutes[10], String:reason[256]; GetCmdArg(1, steamid, sizeof(steamid)); GetCmdArg(2, minutes, sizeof(minutes)); GetCmdArg(3, reason, sizeof(reason)); CheckAndPerformBan(client, steamid, StringToInt(minutes), reason); } return Plugin_Handled; } CheckAndPerformBan(client, const String:steamid[], minutes, const String:reason[]) { new AdminId:source_aid = GetUserAdmin(client), AdminId:target_aid; if ( (target_aid = FindAdminByIdentity(AUTHMETHOD_STEAM, steamid)) == INVALID_ADMIN_ID || CanAdminTarget(source_aid, target_aid)) { // Ugly hack: Sourcemod doesn't provide means to run a client command with elevated permissions, // so we briefly grant the admin the root flag new bool:has_root_flag = GetAdminFlag(source_aid, Admin_Root); SetAdminFlag(source_aid, Admin_Root, true); FakeClientCommand(client, "sm_addban %d \"%s\" %s", minutes, steamid, reason); SetAdminFlag(source_aid, Admin_Root, has_root_flag); } else ReplyToCommand(client, "[sm_bandisconnected] You can't ban an admin with higher immunity than yourself"); } /////////////////////////////////////////////////////////////////////////////// // Menu madness /////////////////////////////////////////////////////////////////////////////// public OnAdminMenuReady(Handle:topmenu) { if (topmenu != hTopMenu) { hTopMenu = topmenu; new TopMenuObject:player_commands = FindTopMenuCategory(hTopMenu, ADMINMENU_PLAYERCOMMANDS); if (player_commands != INVALID_TOPMENUOBJECT) AddToTopMenu(hTopMenu, "sm_bandisconnected", TopMenuObject_Item, AdminMenu_Ban, player_commands, "sm_bandisconnected", ADMFLAG_BAN); } } public AdminMenu_Ban(Handle:topmenu, TopMenuAction:action, TopMenuObject:object_id, param, String:buffer[], maxlength) { if (action == TopMenuAction_DisplayOption) Format(buffer, maxlength, "Ban disconnected player"); else if (action == TopMenuAction_SelectOption) DisplayBanTargetMenu(param); } DisplayBanTargetMenu(client) { new Handle:menu = CreateMenu(MenuHandler_BanPlayerList); SetMenuTitle(menu, "Ban disconnected player"); SetMenuExitBackButton(menu, true); for (new i=queue_get_size()-1; i>=0; --i) { new pos = queue_translate_pos(i); decl String:client_info[100]; new delta = GetTime() - disconnected_player_times[pos]; Format(client_info, sizeof(client_info), "%s (%s) (%dd:%02dh:%02dm:%02ds ago)", disconnected_player_names[pos], disconnected_player_authids[pos], (delta / (60*60*24)), (delta % (60*60*24)) / (60*60), (delta % (60*60)) / 60, (delta % 60)); AddMenuItem(menu, disconnected_player_authids[pos], client_info); } DisplayMenu(menu, client, MENU_TIME_FOREVER); } public MenuHandler_BanPlayerList(Handle:menu, MenuAction:action, param1, param2) { if (action == MenuAction_End) CloseHandle(menu); else if (action == MenuAction_Cancel) { if (param2 == MenuCancel_ExitBack && hTopMenu != INVALID_HANDLE) DisplayTopMenu(hTopMenu, param1, TopMenuPosition_LastCategory); } else if (action == MenuAction_Select) { decl String:state_[128]; GetMenuItem(menu, param2, state_, sizeof(state_)); DisplayBanTimeMenu(param1, state_); } } AddMenuItemWithState(Handle:menu, const String:state_[], const String:addstate[], const String:display[]) { decl String:newstate[128]; Format(newstate, sizeof(newstate), "%s\n%s", state_, addstate); AddMenuItem(menu, newstate, display); } DisplayBanTimeMenu(client, const String:state_[]) { new Handle:menu = CreateMenu(MenuHandler_BanTimeList); SetMenuTitle(menu, "Ban disconnected player"); SetMenuExitBackButton(menu, true); AddMenuItemWithState(menu, state_, "0", "Permanent"); AddMenuItemWithState(menu, state_, "10", "10 Minutes"); AddMenuItemWithState(menu, state_, "30", "30 Minutes"); AddMenuItemWithState(menu, state_, "60", "1 Hour"); AddMenuItemWithState(menu, state_, "240", "4 Hours"); AddMenuItemWithState(menu, state_, "1440", "1 Day"); AddMenuItemWithState(menu, state_, "10080", "1 Week"); AddMenuItemWithState(menu, state_, "20160", "2 Weeks"); AddMenuItemWithState(menu, state_, "30240", "3 Weeks"); AddMenuItemWithState(menu, state_, "43200", "1 Month"); AddMenuItemWithState(menu, state_, "129600", "3 Months"); DisplayMenu(menu, client, MENU_TIME_FOREVER); } public MenuHandler_BanTimeList(Handle:menu, MenuAction:action, param1, param2) { if (action == MenuAction_End) CloseHandle(menu); else if (action == MenuAction_Cancel) { if (param2 == MenuCancel_ExitBack && hTopMenu != INVALID_HANDLE) DisplayTopMenu(hTopMenu, param1, TopMenuPosition_LastCategory); } else if (action == MenuAction_Select) { decl String:state_[128]; GetMenuItem(menu, param2, state_, sizeof(state_)); DisplayBanReasonMenu(param1, state_); } } DisplayBanReasonMenu(client, const String:state_[]) { new Handle:menu = CreateMenu(MenuHandler_BanReasonList); SetMenuTitle(menu, "Ban reason"); SetMenuExitBackButton(menu, true); AddMenuItemWithState(menu, state_, "Abusive", "Abusive"); AddMenuItemWithState(menu, state_, "Racism", "Racism"); AddMenuItemWithState(menu, state_, "General cheating/exploits", "General cheating/exploits"); AddMenuItemWithState(menu, state_, "Wallhack", "Wallhack"); AddMenuItemWithState(menu, state_, "Aimbot", "Aimbot"); AddMenuItemWithState(menu, state_, "Speedhacking", "Speedhacking"); AddMenuItemWithState(menu, state_, "Mic spamming", "Mic spamming"); AddMenuItemWithState(menu, state_, "Admin disrepect", "Admin disrepect"); AddMenuItemWithState(menu, state_, "Camping", "Camping"); AddMenuItemWithState(menu, state_, "Team killing", "Team killing"); AddMenuItemWithState(menu, state_, "Unacceptable Spray", "Unacceptable Spray"); AddMenuItemWithState(menu, state_, "Breaking Server Rules", "Breaking Server Rules"); AddMenuItemWithState(menu, state_, "Other", "Other"); DisplayMenu(menu, client, MENU_TIME_FOREVER); } public MenuHandler_BanReasonList(Handle:menu, MenuAction:action, param1, param2) { if (action == MenuAction_End) CloseHandle(menu); else if (action == MenuAction_Cancel) { if (param2 == MenuCancel_ExitBack && hTopMenu != INVALID_HANDLE) DisplayTopMenu(hTopMenu, param1, TopMenuPosition_LastCategory); } else if (action == MenuAction_Select) { decl String:state_[128], String:state_parts[4][32]; GetMenuItem(menu, param2, state_, sizeof(state_)); LogError("State: '%s'", state_); if (ExplodeString(state_, "\n", state_parts, sizeof(state_parts), sizeof(state_parts[])) != 3) SetFailState("Bug in menu handlers"); else CheckAndPerformBan(param1, state_parts[0], StringToInt(state_parts[1]), state_parts[2]); } } /////////////////////////////////////////////////////////////////////////////// // A very simple fixed-size queue yielding offsets into cyclic array(s) /////////////////////////////////////////////////////////////////////////////// static queue_max_size = STORED_ENTRIES; static queue_size = 0; static queue_start = 0; queue_get_size() { return queue_size; } //queue_is_full() { return queue_size == queue_max_size; } //queue_is_empty() { return queue_size == 0; } //queue_space_left() { return queue_max_size - queue_size; } // Given a logical position within the queue between 0 (queue front; oldest item) // and queue_size-1 (queue back; newest item), returns the translated position // in the cyclic array. queue_translate_pos(pos) { pos += queue_start; if (pos >= queue_max_size) return pos - queue_max_size; else return pos; } // Adds an item to the queue, possibly popping the oldest item to make room if // the queue is full. Returns the translated position of the new item in the // cyclic array. queue_push() { if (queue_size == queue_max_size) queue_pop(); return queue_translate_pos(queue_size++); } // Removes an item from the queue, assuming it is non-empty. If it is empty, it // will stop the plugin execution! queue_pop() { if (queue_size == 0) { SetFailState("Can't pop from an empty queue!"); return -1; } else { new pos = queue_start; queue_start = queue_translate_pos(1); --queue_size; return pos; } } Si tu enlève cette ligne: AddMenuItemWithState(menu, state_, "0", "Permanent"); à ce bout de code: DisplayBanTimeMenu(client, const String:state_[]) { new Handle:menu = CreateMenu(MenuHandler_BanTimeList); SetMenuTitle(menu, "Ban disconnected player"); SetMenuExitBackButton(menu, true); AddMenuItemWithState(menu, state_, "0", "Permanent"); AddMenuItemWithState(menu, state_, "10", "10 Minutes"); AddMenuItemWithState(menu, state_, "30", "30 Minutes"); AddMenuItemWithState(menu, state_, "60", "1 Hour"); AddMenuItemWithState(menu, state_, "240", "4 Hours"); AddMenuItemWithState(menu, state_, "1440", "1 Day"); AddMenuItemWithState(menu, state_, "10080", "1 Week"); AddMenuItemWithState(menu, state_, "20160", "2 Weeks"); AddMenuItemWithState(menu, state_, "30240", "3 Weeks"); AddMenuItemWithState(menu, state_, "43200", "1 Month"); AddMenuItemWithState(menu, state_, "129600", "3 Months"); DisplayMenu(menu, client, MENU_TIME_FOREVER); } Ca devrait enlevé le ban permanent et pour les raisons modifie ces lignes: DisplayBanReasonMenu(client, const String:state_[]) { new Handle:menu = CreateMenu(MenuHandler_BanReasonList); SetMenuTitle(menu, "Ban reason"); SetMenuExitBackButton(menu, true); AddMenuItemWithState(menu, state_, "Abusive", "Abusive"); AddMenuItemWithState(menu, state_, "Racism", "Racism"); AddMenuItemWithState(menu, state_, "General cheating/exploits", "General cheating/exploits"); AddMenuItemWithState(menu, state_, "Wallhack", "Wallhack"); AddMenuItemWithState(menu, state_, "Aimbot", "Aimbot"); AddMenuItemWithState(menu, state_, "Speedhacking", "Speedhacking"); AddMenuItemWithState(menu, state_, "Mic spamming", "Mic spamming"); AddMenuItemWithState(menu, state_, "Admin disrepect", "Admin disrepect"); AddMenuItemWithState(menu, state_, "Camping", "Camping"); AddMenuItemWithState(menu, state_, "Team killing", "Team killing"); AddMenuItemWithState(menu, state_, "Unacceptable Spray", "Unacceptable Spray"); AddMenuItemWithState(menu, state_, "Breaking Server Rules", "Breaking Server Rules"); AddMenuItemWithState(menu, state_, "Other", "Other"); DisplayMenu(menu, client, MENU_TIME_FOREVER); } Puis tu compile le plugin.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.