PHP Code:
#include <amxmodx>
#include <fun> // Tout le temps included même quand pas besoin
#include <hamsandwich> // Tout le temps included même quand pas besoin
#include <cstrike> // Tout le temps included même quand pas besoin
new HasSuperKnife[33], HasSuperSpeed[33] // Tout le temps créé même si ces options ne sont pas choisies
public plugin_init()
{
register_plugin("Shop By PluginSchool", "1.0", "Gilbert")
RegisterHam(Ham_TakeDamage, "player", "Player_Damage", 0) // Tout le temps créé même les options utilisant ce hook ne sont pas choisies
RegisterHam(Ham_Spawn, "player", "Player_Spawn", 0) // Tout le temps créé même les options utilisant ce hook ne sont pas choisies
RegisterHam(Ham_Player_ResetMaxSpeed, "player", "Player_ResetMaxSpeed", 1/*"*/) // ' " ' en trop.
register_clcmd("say shop", "shopmenu") // Pourquoi ne pas laisser choisir les commandes?
register_clcmd("say /shop", "shopmenu")
}
public client_putinserver(id) // Tout le temps créé même si ces options ne sont pas choisies
{
HasSuperKnife[id] = false
HasSuperSpeed[id] = false
}
public Player_Spawn(id)
{
if(is_user_alive(id)&& cs_get_user_team(id) == CS_TEAM_CT)
{
HasSuperKnife[id] = false
HasSuperSpeed[id] = false
}
}
// Les fautes d'orthographe... OMG
public shopmenu(id)
{
new menu
if ( is_user_alive(id)&& cs_get_user_team(id) == CS_TEAM_CT)
{
menu = menu_create("Shop By PluginSchool", "menu") // Pourquoi ne pas laisser choisir le titre? Et pourquoi pas le formatage des lignes du shop tout simplement?
menu_additem(menu, "Vitesse - [ 100 $]", "0") // laisser choisir la speed?
menu_additem(menu, "Graviter - [ 100 $]", "1") // laisser choisir la gravité?
menu_additem(menu, "Vie +200 - [ 100 $]", "2") // laisser choisir la vie?
menu_additem(menu, "Super Cut - [ 100 $]", "3") // laisser choisir les dégâts du super cut?
menu_additem(menu, "Defuse Kit - [ 100 $]", "4")
menu_additem(menu, "Respawn - [ 100 $]", "5")
menu_additem(menu, "Une Arme - [ 100 $]", "6") // Afficher le nom de l'arme?
menu_setprop(menu, MPROP_EXITNAME, "QUITTER")
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) // inutile
menu_display(id, menu)
}
}
// le check des team peut être fait une seule fois.
// le check de l'argent idem
// aucun check si le joueur est en vie... ça va crash très souvent...
// il manque un ' " ' a chaque print
// l'indentation ..
// Les fautes d'orthographe... OMG
public menu(id, menu, item)
{
if (item == MENU_EXIT) return PLUGIN_HANDLED
switch(item)
{
case 0:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
HasSuperSpeed[id] = true
//client_print(id, print_chat, "tu as achete - Vitesse)
client_print(id, print_chat, "tu as achete - Vitesse")
}
}
case 1:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_gravity(id, 0.4)
//client_print(id, print_chat, "tu as achete - Graviter)
client_print(id, print_chat, "tu as achete - Graviter")
}
}
case 2:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_health(id, get_user_health(id) +200)
//client_print(id, print_chat, "tu as achete - Vie +200)
client_print(id, print_chat, "tu as achete - Vie +200")
}
}
case 3:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
HasSuperKnife[id] = true
//client_print(id, print_chat, "tu as achete - Super Cut)
client_print(id, print_chat, "tu as achete - Super Cut")
}
}
case 4:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
cs_set_user_defuse(id, 1)
//client_print(id, print_chat, "tu as achete - Defuse Kit)
client_print(id, print_chat, "tu as achete - Defuse Kit")
}
}
case 5:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
spawn(id) // NON!!! Utilise HamSandWich !!! ExecuteHamB(Ham_CS_RoundRespawn, id) !!!
//client_print(id, print_chat, "tu as achete - Respawn)
client_print(id, print_chat, "tu as achete - Respawn")
}
}
case 6:
{
if(cs_take_user_money(id, 100)&& cs_get_user_team(id) == CS_TEAM_CT)
{
give_item(id,Ton_arme) // Ca doit pas être tres dur de dynamiser ça
cs_set_user_bpammo( id, CSW_TON ARME, Munition) // idem
//client_print(id, print_chat, "tu as achete - Une Arme)
client_print(id, print_chat, "tu as achete - Une Arme")
}
}
}
return PLUGIN_HANDLED
}
public Player_Damage(victim, inflictor, attacker, Float:damage, damagebits)
{
if(is_user_alive(attacker) && get_user_weapon(attacker) == CSW_KNIFE && HasSuperKnife[attacker] && inflictor == attacker)
{
SetHamParamFloat(4, damage * 222.0)
}
}
public Player_ResetMaxSpeed(id)
{
if( is_user_alive(id) && HasSuperSpeed[id] && get_user_maxspeed(id) != 1.0) // -1.0
{
set_pev(id, pev_maxspeed, 680.0)
}
}
cs_take_user_money(id, amount)
{
new money = cs_get_user_money(id)
if(money - amount < 0)
return 0;
cs_set_user_money(id, clamp(money - amount, 0, 16000))
return 1;
}