[spoiler]Kód:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <colorchat>
#include <dhudmessage>
#include <hamsandwich>
#include <nvault>
#define PLUGIN "Pont rendszer"
#define VERZIO "1.0"
#define KESZITO "OrOsZrUlEtt."
#define KEZDOPONT 5
#define KEZDOPONT_VIP 10
#define OLESPONT 2
#define OLESPONT_VIP 5
#define BONUSZ1 5
#define BONUSZ2 7
#define BONUSZ3 8
#define BONUSZIDO1 180.0
#define BONUSZIDO2 300.0
#define BONUSZIDO3 600.0
#define VIPJOG ADMIN_LEVEL_B
#define SZINT_2 50
#define SZINT_2_BONUSZ 10
new pontok[33]
new r
new g
new b
new menu
new playernev[33][32]
new vault
public plugin_init() {
register_plugin(PLUGIN, VERZIO, KESZITO)
register_clcmd("say /pontok", "kiir_pont")
register_clcmd("say /pont", "kiir_pont")
register_clcmd("say /shop", "go_shopmenu")
register_clcmd("say /bolt", "go_shopmenu")
register_dictionary("pontrendszer.txt")
vault = nvault_open("Ponton");
RegisterHam(Ham_Killed, "player", "fw_player_killed")
{
menu = menu_create("\rDubStepCity Shop ","menu_funkciok")
menu_additem(menu, "\yItem : ???")
menu_additem(menu, "\yItem : ???")
menu_additem(menu, "\yItem : ???")
menu_additem(menu, "\yItem : ???")
menu_additem(menu, "\yItem : ???")
}
}
public menu_funkciok(id, menu, key)
{
key++
if(key == 1)
{
//1. Menu item
}
if(key == 2)
{
//2. Menu item
}
if(key == 3)
{
//3. Menu item
}
if(key == 4)
{
//4. Menu item
}
if(key == 5)
{
//5. Menu item
}
}
public client_putinserver( id )
{
get_user_name(id, playernev[id], 31)
Betoltes(id)
set_task(5.0, "kiir_hud_pont", id)
set_task(5.1, "kiir_chat_info", id)
//Ido bonusz
set_task(BONUSZIDO1, "bonusz_1", id)
set_task(BONUSZIDO2, "bonusz_2", id)
set_task(BONUSZIDO3, "bonusz_3", id)
}
public client_disconnect(id)
{
Mentes(id)
pontok[id] = 0
}
public bonusz_1( id )
{
pontok[id] += BONUSZ1
ColorChat(id, GREEN, "%L", LANG_PLAYER, "BONUSZ_1", BONUSZ1, BONUSZIDO1)
}
public bonusz_2( id )
{
pontok[id] += BONUSZ2
ColorChat(id, GREEN, "%L", LANG_PLAYER, "BONUSZ_2", BONUSZ2, BONUSZIDO1)
}
public bonusz_3( id )
{
pontok[id] += BONUSZ3
ColorChat(id, GREEN, "%L", LANG_PLAYER, "BONUSZ_3", BONUSZ3, BONUSZIDO1)
}
public kiir_hud_pont( id )
{
r = random_num(50, 256)
g = random_num(50, 256)
b = random_num(50, 256)
set_dhudmessage(r, g, b, 0.7,-1.0, 0, 6.0, 12.0)
show_dhudmessage(id, "%L", LANG_PLAYER, "PONTOK_HUD", pontok[id])
}
public kiir_chat_info( id )
{
ColorChat(id, GREEN, "%L", LANG_PLAYER, "INFO_CHAT_1")
ColorChat(id, GREEN, "%L", LANG_PLAYER, "INFO_CHAT_2")
}
public kiir_pont( id )
{
ColorChat(id, GREEN, "%L", LANG_PLAYER, "PONTOK_CHAT", pontok[id])
}
public fw_player_killed(victim, attacker, shouldgib, id)
{
if(get_user_flags(id, VIPJOG))
{
pontok[attacker] += OLESPONT_VIP
ColorChat(attacker, GREEN, "%L", LANG_PLAYER, "OLES", OLESPONT_VIP)
if(pontok[id] >= SZINT_2)
{
new name[33]
get_user_name(id, name, 31)
ColorChat(0, RED, "%L", LANG_PLAYER, "SZINTLEPES", name, SZINT_2_BONUSZ)
pontok[id] += SZINT_2_BONUSZ
}
}else{
pontok[attacker] += OLESPONT
ColorChat(attacker, GREEN, "%L", LANG_PLAYER, "OLES", OLESPONT)
}
}
public go_shopmenu(id)
{
menu_display(id,menu)
return PLUGIN_HANDLED
}
public Mentes(id)
{
new vaultkey[128],vaultdata[256];
format(vaultkey, charsmax(vaultkey),"%s-pont", playernev[id]);
format(vaultdata, charsmax(vaultdata),"%i", pontok[id]);
nvault_set(vault,vaultkey,vaultdata);
return PLUGIN_CONTINUE;
}
public Betoltes(id)
{
new vaultkey[128],vaultdata[256];
format(vaultkey, charsmax(vaultkey),"%s-pont", playernev[id]);
nvault_get(vault,vaultkey,vaultdata,255)
pontok[id] = (str_to_num(vaultdata)>KEZDOPONT)?str_to_num(vaultdata):KEZDOPONT;
return PLUGIN_CONTINUE;
}
[/spoiler]
|