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.

[TUTO] Faire un menu sur SourcePAWN (CORRECTION DU TUTO DE KRIAX)

Featured Replies

Bonjour à tous !

 

Aujourd'hui je vais vous présenter un tutoriel qui a déjà été posté sur le forum mais qui est faux.

 

premièrement nous allons procurer aux explications.

 

Alors, comme d'habitude, on met l'include sourcemod

#include <sourcemod>

Ensuite, on prévient l'ouverture du plugin comme ceci:

 

public OnPluginStart()
{ //code }

A l'intérieur de la variable OnPluginStart on ajoute la variable qui permettra de définir la commande pour ouvrir le menu:

RegConsoleCmd("sm_menu", Menu1);

Maintenant nous allons prévenir que cette commande ouvrira le menu:

public Action: Menu1(client, args)
{ //code }

A l'intérieur de ce code, nous allons définir le titre du menu ainsi que son contenu, mais avant ça, il faut créer le menu avec ce code: 

new Handle:menu = CreateMenu(OpenMenu);

Pour définir le titre du menu on utilise la variable SetMenuTitle:

SetMenuTitle(menu, "Titre du menu");

Puis, on ajoute son contenu avec la variable AddMenuItem:

AddMenuItem(menu, "Contenu 1", "Contenu1");
AddMenuItem(menu, "Contenu 2", "Contenu2");
AddMenuItem(menu, "Contenu 3", "Contenu3");

On affiche si oui ou non, nous voulons que le joueur ferme le menu sans sélectionner un contenu (ici Oui):

SetMenuExitButton(menu, true); 

Et pour finir, on définit combien de temps doit rester ouvert le menu: 

DisplayMenu(menu, client, MENU_TIME_FOREVER);
MENU_TIME_FOREVER 

signifie que nous voulons ouvrir le menu sans aucun temps.

Si nous souhaitons ouvrir notre menu pour par exemple 30 secondes, il faut remplacer MENU_TIME_FOREVER par le nombre de secondes, ce qui donnera ça: 

DisplayMenu(menu, client, 30);

Ensuite c'est cool d'avoir notre menu, mais disons que nous souhaitons qu'à chaque contenu sélectionné, nous voulons qu'un texte s'affiche dans le chat du jeu, alors nous utiliserons ceci:

public OpenMenu(Handle:menu, MenuAction:action, client, itemNum)

on définit l'action : 

if ( action == MenuAction_Select )

On procède à un switch pour être plus clair ça veut dire que nous disons à SourceMod que nous souhaitons changer la selection en une phrase:

switch (itemNum)

Et maintenant, on définit chaque contenu en utilisant case:

case 0 : PrintToChat(client, "ça affiche le contenu 1");
case 1 : PrintToChat(client, "ça affiche le contenu 2");
case 2 : PrintToChat(client, "ça affiche le contenu 3");

Et notre code au final donnera ça: 

 

#include <sourcemod>


public OnPluginStart()
{
{
RegConsoleCmd("sm_regle", Menu1, "Affiche le menu");
}
}


public Action: Menu1(client, args)
{
new Handle:menu = CreateMenu(OpenMenu);
SetMenuTitle(menu, "Titre du menu");
AddMenuItem(menu, "Contenu 1", "Contenu1");
AddMenuItem(menu, "Contenu 2", "Contenu2");
AddMenuItem(menu, "Contenu 3", "Contenu3");
SetMenuExitButton(menu, true);
DisplayMenu(menu, client, MENU_TIME_FOREVER);
}


public OpenMenu(Handle:menu, MenuAction:action, client, itemNum)
{
if ( action == MenuAction_Select )
{
switch (itemNum)
{
case 0 : PrintToChat(client, "ça affiche le contenu 1");
case 1 : PrintToChat(client, "ça affiche le contenu 2");
case 2 : PrintToChat(client, "ça affiche le contenu 3");
}
}
}

Voilà, ce tutoriel est authentique, je ne l'ai pas copié/collé d'un autre forum, j'ai écris les codes à la main.

 

En cas d'erreur dans mon code, prévenez moi je corrigerais.

 

A bientôt pour un nouveau tuto ;)

Edited by K4nsuke

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

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.