Repository navigation
AAMenu
AAMenu
Commencer par importer
Ensuite, je vous recommande de créer une fonction dans laquelle vous y référencer toute vos insertions dans le menu de manière à ne pas surcharger votre fonction
using _menu = AAMenu.Menu;
using ModKit.Helper;
using ModKit.Interfaces;
public class MyPlugin : ModKit.ModKit
{
public MyPlugin(IGameAPI api) : base(api)
{
PluginInformations = new PluginInformations(AssemblyHelper.GetName(), "1.0.0", "Aarnow");
}
public override void OnPluginInit()
{
base.OnPluginInit();
InsertMenu();
}
public void InsertMenu()
{
}
}Ajoute une nouvelle TabLine pour les entreprises dont les activités sont autorisées.
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin -
${\color{Goldenrod}\normalsize{\textsf{activitiesAllowed}}}$ : Liste des activités autorisées -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionné
public void InsertMenu()
{
// Pour les compétences propres à un ou plusieurs métiers
_menu.AddBizTabLine(PluginInformations, new List<Activity.Type> { Activity.Type.Chef },null, "Nom de la compétence", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
// Pour les compétences communes à tous les métiers
_menu.AddBizTabLine(PluginInformations, new List<Activity.Type> { Activity.Type.None},null, "Nom de la compétence", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
//Pour les compétences dédiés aux métiers customs:
_menu.AddBizTabLine(PluginInformations, null, _customActivity, "Nom de la compétence", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
}Ajoute une nouvelle TabLine pour intéragir avec les joueurs ou l'environnement.
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionné
public void InsertMenu()
{
_menu.AddInteractionTabLine(PluginInformations, "Nom de l'interaction", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
}Ajoute une nouvelle TabLine pour consulter un document.
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom du document -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionné
public void InsertMenu()
{
_menu.AddDocumentTabLine(PluginInformations, "Nom du document", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
}Ajoute une nouvelle TabLine pour interagir avec un objet à proximité
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin -
${\color{Goldenrod}\normalsize{\textsf{objectId}}}$ : ID de l'objet -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionné
_menu.AddProximityTabLine(PluginInformations, 1651, "PANNEAU", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
//Si vous voulez indexer votre tabline en haut de la liste et limiter les interactions à certains terrains
// 0 = en haut
// 1 = terrain de la Mairie pour Amboise par exemple
_menu.AddProximityTabLine(PluginInformations, 1651, "PANNEAU", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
}, 0, 1);Ajoute une nouvelle TabLine pour interagir avec un objet lié à une activité professionnelle, avec des conditions basées sur les activités autorisées et les zones spécifiques.
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin. -
${\color{Goldenrod}\normalsize{\textsf{activitiesAllowed}}}$ : Liste des types d'activités autorisées pour cette action. -
${\color{Goldenrod}\normalsize{\textsf{customActivity}}}$ : Activité personnalisée qui peut déclencher cette action. -
${\color{Goldenrod}\normalsize{\textsf{objectId}}}$ : ID de l'objet lié à l'action. -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action (s'il n'est pas fourni, le nom de l'objet sera utilisé). -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionnée. -
${\color{Goldenrod}\normalsize{\textsf{index}}}$ : Position de l'élément dans la liste des actions (0 pour le haut de la liste). -
${\color{Goldenrod}\normalsize{\textsf{areasId}}}$ : (Optionnel) Liste des IDs de zones spécifiques où cette action est disponible.
// Ajout simple d'une ligne d'onglet avec des conditions d'activité
_menu.AddProximityBizTabLine(PluginInformations, new List<Activity.Type> { Activity.Type.None }, null, 1651, "INTERAGIR", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
// votre code pour l'action
}, 0);
// Ajout avec restrictions d'activités et de zones spécifiques
_menu.AddProximityBizTabLine(PluginInformations, new List<Activity.Type> { Activity.Type.Business }, myCustomActivity, 1651, "INTERAGIR", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
// votre code pour l'action
}, 0, new List<int> { 1, 2, 3 });Ajoute une nouvelle TabLine pour les admins selon leurs niveau.
-
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin -
${\color{Goldenrod}\normalsize{\textsf{minAdminLevel}}}$ : Niveau d'administrateur minimum requis -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionné
public void InsertMenu()
{
_menu.AddAdminTabLine(PluginInformations, 5, "Nom de l'action", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
//votre code
});
}Ajoute une nouvelle TabLine pour interagir avec un plugin ou son fichier config, avec une restriction sur le niveau minimum d'administration requis.
${\color{NavyBlue}\normalsize{\textsf{AddAdminPluginTabLine(pluginInformations, minAdminLevel, name, action, index)}}}$ -
${\color{Goldenrod}\normalsize{\textsf{pluginInformations}}}$ : Informations sur le plugin. -
${\color{Goldenrod}\normalsize{\textsf{minAdminLevel}}}$ : Niveau minimum d'administration requis pour exécuter cette action. -
${\color{Goldenrod}\normalsize{\textsf{name}}}$ : Nom de l'action (qui sera affiché dans l'onglet). -
${\color{Goldenrod}\normalsize{\textsf{action}}}$ : Action à exécuter lorsque la ligne de l'onglet est sélectionnée. -
${\color{Goldenrod}\normalsize{\textsf{index}}}$ : Position de l'élément dans la liste des actions (0 pour le haut de la liste).
// Ajout simple d'une ligne d'onglet avec une restriction de niveau d'administration
_menu.AddAdminPluginTabLine(PluginInformations, 1, "ACTION ADMIN", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
// votre code pour l'action
}, 0);
// Ajout avec un niveau minimum d'administration élevé
_menu.AddAdminPluginTabLine(PluginInformations, 3, "ACTION SUPER ADMIN", (ui) =>
{
Player player = PanelHelper.ReturnPlayerFromPanel(ui);
// votre code pour l'action
}, 1);Pour revenir depuis votre plugin vers l'un des panels de AAMENU, vous devez déclencher la méthode du panel souhaité depuis un bouton lambda.
//exemple pour revenir au panel d'interaction
panel.AddButton("Retour", ui => AAMenu.AAMenu.menu.InteractionPanel(player));- Getting Started
- Ajouter une compétence métier
- Ajouter une interaction
- Ajouter une proximité
- Ajouter une proximité d'activité
- Ajouter une action admin
- Ajouter un plugin
- Retourner vers AAMenu
- Introduction
- Ajouter une activité personnalisé
- Associer une société à une activité personnalisées
- Connaitre l'activité d'un joueur
- Introduction
- PatternData
- Classe de base
- Fonctions à compléter ou créer
- Enregistrer votre type de point en base de donées
- Intégrer votre type de point à AAMenu
- Introduction
- Peupler la base de donées
- Créer un vêtement personnalisés
- Equiper un vêtement
- Afficher les vêtements selon leurs type
- Attribuer/Retirer un vêtement à un joueur
- Recipe & Ingredient
- Récupérer les recettes
- Récupérer les recettes selon la catégorie
- Ajouter une recette
- Comment l'utiliser
