Raised This Month: $ Target: $400
 0% 

What is wrong? My plugin, i'm learing


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
lis_16
Senior Member
Join Date: Feb 2008
Old 08-15-2009 , 13:15   What is wrong? My plugin, i'm learing
Reply With Quote #1

I have problem with this. It's not completed i know but why 2 classes (zlonierz and kamikadze) have no special abilities? Can someone explain that?

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#define MAXCLASSES 6



enum {
PLAYERLEVEL_1,
PLAYERLEVEL_2,
PLAYERLEVEL_3// How many Levels
PLAYERLEVEL_4,
PLAYERLEVEL_5,
PLAYERLEVEL_6,
PLAYERLEVEL_7,
PLAYERLEVEL_8,
PLAYERLEVEL_9,
PLAYERLEVEL_10
}
enum {
CLASS_BRAK 0,
CLASS_ZOLNIERZ,
CLASS_KAMIKADZE// Add your Classes there..
CLASS_MEDYK,
CLASS_SNAJPER,
CLASS_KOMANDOS
}

new const 
CLASSES[MAXCLASSES][] = {
    
"Brak",
    
"Zolnierz",
    
"Kamikadze",
    
"Medyk",
    
"Snajper",
    
"Komandos"
}
new const 
LEVELS[10] = {
    
25
    
50
    
75
    
100,
    
125,
    
150,
    
175,
    
200,
    
250,
    
350
}
new 
PlayerXP[33],PlayerLevel[33],PlayerClass[33]
new 
XP_Kill,XP_Knife,XP_Hs,SaveXP,g_vault
public plugin_init()
{
    
register_plugin("WarMod""1.0""lisek")
    
register_event("DeathMsg""eDeath""a");
    
register_logevent("logevent_round_start"2"1=Round_Start")  
   
 
    
SaveXP register_cvar("SaveXP","1")
    
XP_Kill=register_cvar("XP_per_kill""20")
    
XP_Hs=register_cvar("XP_hs_bonus","20")
    
XP_Knife=register_cvar("XP_knife_bonus","20")
    
g_vault nvault_open("warmod")
 
    
register_clcmd("say /klasa""ChangeClass")
    
register_clcmd("say_team /klasa""ChangeClass")
    
register_clcmd("say /xp""ShowHud")
    
register_clcmd("say_team /xp""ShowHud")
}
public 
eDeath(  ) 
{
    new 
attacker read_data)
    new 
headshot read_data)
    new 
clipammoweapon get_user_weapon(attacker,clip,ammo);
 
    
PlayerXP[attacker] += get_pcvar_num(XP_Kill)
 
    if(
headshot)
    
PlayerXP[attacker] += get_pcvar_num(XP_Hs)
 
    if(
weapon == CSW_KNIFE)
    
PlayerXP[attacker] += get_pcvar_num(XP_Knife)
 
 
    while(
PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]])
    {
    
client_print(attackerprint_chat"*WarMod* Awansujesz! Masz level %i %s!"PlayerLevel[attacker],CLASSES[PlayerClass[attacker]])
    
PlayerLevel[attacker] += 1
    
}

    
ShowHud(attacker)
    
SaveData(attacker)
}

public 
ShowHud(id)
{
    
set_hudmessage(255000.750.0106.015.0)
    
show_hudmessage(id"Level: %i^nXP: %i^nKlasa: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
}
public 
ChangeClass(id)
{
    new 
menu menu_create("Class Menu" "Class_Handle");
    
menu_additem(menu ,"Zolnierz""1" 0);
    
menu_additem(menu ,"Kamikaze""2" 0);
    
menu_additem(menu ,"Medyk""3" 0);
    
menu_additem(menu ,"Snajper""4" 0);
    
menu_additem(menu ,"Rambo""5" 0);
 
    
menu_setprop(menu MPROP_EXIT MEXIT_ALL);
 
    
menu_display(id menu 0);
 
    return 
PLUGIN_CONTINUE;
}
public 
Class_Handle(id menu item
{
    if(
item == MENU_EXIT
    {
 
        
menu_destroy(menu);
 
    }
 
    new 
szCommand[7] , szName[64];
    new 
access callback;
 
    
menu_item_getinfo(menu item access szCommand szName 63 callback);
 
    new 
str_to_num(szCommand)
    if(
PlayerClass[id] != i)
    {
        
PlayerClass[id] = i
        client_print
(id,print_chat,"Twoja klasa to %s"CLASSES[i])
    }
    else
    {
        
client_print(id,print_chat,"Aktualnie posiadasz klase %s"CLASSES[i])
    }
 
    
menu_destroy(menu);
    return 
PLUGIN_CONTINUE
}
public 
client_connect(id)
{
    if(
get_pcvar_num(SaveXP) == 1)
    {
 
        
LoadData(id)
    }
}
public 
client_disconnect(id)
{
    if(
get_pcvar_num(SaveXP) == 1)
    {
 
        
SaveData(id)
    }
    
PlayerXP[id] = 0
    PlayerLevel
[id] = 0
    PlayerClass
[id] = 0
}
public 
SaveData(id)
{
    new 
AuthID[35]
    
get_user_authid(id,AuthID,34)
 
    new 
vaultkey[64],vaultdata[256]
    
format(vaultkey,63,"%s-Mod",AuthID)
    
format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
    
nvault_set(g_vault,vaultkey,vaultdata)
    return 
PLUGIN_CONTINUE
}
public 
LoadData(id)
{
    new 
AuthID[35]
    
get_user_authid(id,AuthID,34)
 
    new 
vaultkey[64],vaultdata[256]
    
format(vaultkey,63,"%s-Mod",AuthID)
    
format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
    
nvault_get(g_vault,vaultkey,vaultdata,255)
 
    
replace_all(vaultdata255"#"" ")
 
    new 
playerxp[32], playerlevel[32]
 
    
parse(vaultdataplayerxp31playerlevel31)
 
    
PlayerXP[id] = str_to_num(playerxp)
    
PlayerLevel[id] = str_to_num(playerlevel)
 
    return 
PLUGIN_CONTINUE
}  
public 
client_putinserver(id)
set_task(6.0"ChangeClass"id)

//wlasciwosci poszczegolnych klas
//Zolnierz

public logevent_round_start(id)
{

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 1
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 2
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");


if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 3
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_mp5navy");
give_item(id,"ammo_9mm");
give_item(id,"ammo_9mm");
give_item(id,"ammo_9mm");
give_item(id,"ammo_9mm");


if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 4
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_galil");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 5
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_famas");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 6
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_sg550");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 7
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_sg552");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 8
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_ak47");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 9
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_m4a1");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
}  

if (
PlayerClass[id] == CLASS_ZOLNIERZ || PlayerLevel[id] == 10
{
give_item(id,"weapon_deagle");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"ammo_50ae");
give_item(id,"weapon_shield");
give_item(id,"weapon_m4a1");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"ammo_556nato");
give_item(id,"weapon_ak47");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
give_item(id,"ammo_762nato");
give_item(id,"weapon_flashbang");
give_item(id,"weapon_flashbang");
give_item(id,"weapon_smokegrenade");
give_item(id,"weapon_hegrenade")
}  

    
    
//Kamikadze
    

if (PlayerClass[id] == CLASS_KAMIKADZE
{
set_user_maxspeed(id,1000.0);
engclient_cmd(id,"weapon_knife")
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 1
{
set_user_armor(id,25);
set_user_health(id,25)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 2
{
set_user_armor(id,50);
set_user_health(id,50)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 3
{
set_user_armor(id,75);
set_user_health(id,75)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 4
{
set_user_armor(id,100);
set_user_health(id,100)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 5
{
set_user_armor(id,125);
set_user_health(id,125)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 6
{
set_user_armor(id,150);
set_user_health(id,150)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 7
{
set_user_armor(id,175);
set_user_health(id,175)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 8
{
set_user_armor(id,200);
set_user_health(id,200)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 9
{
set_user_armor(id,250);
set_user_health(id,250)
}  

if (
PlayerClass[id] == CLASS_KAMIKADZE || PlayerLevel[id] == 10
{
set_user_armor(id,400);
set_user_health(id,400)
}  

    } 
lis_16 is offline
 


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 15:10.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode