Donc le but est de créer un héro assez simple pour avoir les premières base
Outils nécessaire avoir au moins un éditeur de texte style ultra édit ou editplus ( afin d avoir les numéro des lignes ) 2 eme chose un cerveau ( utile pour suivre )
Donc exemple nous allons faire un héro qui a 200 points de vie 200 de point de kevlar avec de la gravité ( alias csamx )
premièrement nous allons charger les includes nécessaire pour le héro
Code :
#include <amxmod> #include <superheromod>
Il y en a d autres qui seront utiles pour des héros plus complexe tel que ( #Fun, #Vexd )
Deuxièmement nous allons charger les variables nécessaires pour le héros
Code :
// VARIABLES new gHeroName[]="Cs-amx" <=== Donc ici nous allons mettre le nom du héro new gHascsamxPower[SH_MAXSLOTS+1] <== Donc ici la variable nous indique si le joueur a le héro
A noter que le nom du héro dans le code sera csamx si on avait mis superman on aurai eu gHassupermanPower
Troisièmement nous allons initialiser le plugins ( donc le héro ) //----------------------------------------------------------------------------------------------
Code :
public plugin_init() <== Commande pour lancer l initialisation du plugin { // Information sur le Plugin register_plugin("SUPERHERO CS-AMX","1.17.6","Slid13")<== Enregistrement du plugin (nom, version, créateur)
// Lancement de la création du héro! if ( isDebugOn() ) server_print("Attempting to create csamx Hero") <== Envoie un message au serveur que le héro est créé, et envoie les éventuels messages de bug register_cvar("csamx_level", "0" ) <== Enregistrement du level par défaut du héro //Après nous avons la commande qui enregistre le héro dans le mod. //"1 vous mettez une description courte du héro", "2 vous mettez une description plus longue du héro", 3 si c est un héro à bind (true ) ou auto ( false ), "rappel nom du héro _ level"
shCreateHero(gHeroName, "Vie / Armure / gravite", "Donne plus de point de vie, de point d armure et de la gravite", false, "csamx_level" )
// Maintenant nous allons enregistrer les évènements auquel le héro devra répondre (et les commandes du serveur) // Initialisation register_srvcmd("csamx_init", "csamx_init") <== Cette commande est nécessaire quand un joueur demande des infos sur cette héro ou veux le droper shRegHeroInit(gHeroName, "csamx_init") <== Dis au mod que vous avez fait l'initialisation du héro
// CVARS Par defaut du hero, on va placer ici les fonctions du héro
register_cvar("csamx_gravity", "0.35" ) <== Donc on enregistre la cvar gravité register_cvar("csamx_armor", "200") <== On enregistre la cvar point d'armure register_cvar("csamx_health", "200") <== On enregistre la cvar point de vie
//Maintenant on va faire connaitre au serveur les variables du héro
shSetMaxHealth(gHeroName, "csamx_health" ) <== Le serveur charge les cvars qu on a demandé shSetMinGravity(gHeroName, "csamx_gravity" ) <== Le serveur charge les cvars qu on a demandé shSetMaxArmor(gHeroName, "csamx_armor" ) <== Le serveur charge les cvars qu on a demandé }
public csamx_init() { new temp[6] // Le premier argument est d'identification read_argv(1,temp,5) <== Ceci examine pour assurer l'identification de la personne lors d'une sélection ou un drop de cet héros, et le mets en chaine de texte new id=str_to_num(temp) <== Ceci transforme la chaine de texte en une chaine numérique
// 2ème argument qui est 0 ou 1 selon si l'identification a le flash read_argv(2,temp,5) <== Ceci vérifie si l'identification a ce héros new hasPowers=str_to_num(temp) <== Ceci transforme la chaine de texte en un chaine numérique gHasSuperPower[id]=(hasPowers!=0)<== Regarde si la personne a le héros
if ( !hasPowers && is_user_connected(id) ) { shRemHealthPower(id) <== Diminuer la vie de HP de ce héro shRemGravityPower(id) <== Diminuer la gravité de ce héro shRemArmorPower(id) <== Diminuer l armure de ce héro } }
// VARIABLES new gHeroName[]="Cs-amx" new gHascsamxPower[SH_MAXSLOTS+1]
//---------------------------------------------------------------------------------------------- public plugin_init() { // Information sur le Plugin register_plugin("SUPERHERO CS-AMX","1.17.6","Slid13")
// Lancement de la création du hero! if ( isDebugOn() ) server_print("Attempting to create csamx Hero") register_cvar("csamx_level", "0" )
//apres nous avons la commande qui enregistre le héro dans le mod. shCreateHero(gHeroName, "Vie / Armure / gravite", "Donne plus de point de vie de point d armure et de la gravite", false, "csamx_level" )
// Maintenant nous allons enregistrer les evenements auquel le héro devra repondre (et les commande du serveur) // initialisation register_srvcmd("csamx_init", "csamx_init") shRegHeroInit(gHeroName, "csamx_init")
// CVARS Par defaut du hero on va placer ici les fonctions du hero
// maintenant on va faire connaitre au serveur les variable du héro
shSetMaxHealth(gHeroName, "csamx_health" ) shSetMinGravity(gHeroName, "csamx_gravity" ) shSetMaxArmor(gHeroName, "csamx_armor" ) } //---------------------------------------------------------------------------------------------- public csamx_init() { new temp[6] // Le premier argument est d'identification read_argv(1,temp,5) new id=str_to_num(temp) numérique
// 2ème argument qui est 0 ou 1 selon si l'identification a le flash read_argv(2,temp,5) new hasPowers=str_to_num(temp) gHasSuperPower[id]=(hasPowers!=0)