AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Glow on Team. (https://forums.alliedmods.net/showthread.php?t=82793)

ianglowz 12-30-2008 03:08

Glow on Team.
 
How to set the glow to the team?

PHP Code:

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#define MAXCLASSES 4
new const CLASSES[MAXCLASSES][] = {
    
"None",
    
"SniperMan",
    
"MachineGunner",
    
"RifleMan"
}
new const 
LEVELS[8] = {
    
100
    
200
    
400
    
800,
    
1000,
    
2000,
    
5000,
    
8000
}
new 
PlayerXP[33],PlayerLevel[33],PlayerClass[33]
new 
XP_Kill,XP_Knife,XP_Hs,SaveXP,g_vault
new thickness
public plugin_init()
{
    
register_plugin("War_XpMod""1.0""ianglowz")
 
    
register_event("DeathMsg""eDeath""a"
    
register_event("ResetHUD","on_spawn","be"
    
    
SaveXP register_cvar("SaveXP","0")
    
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("animod")
    
thickness=register_cvar("ghost_glow","15")
    
    
register_clcmd("say /war""ChangeClass")
    
register_clcmd("say_team /war""ChangeClass")
    
set_task(10.0,"ShowChat","",0,"a")
}
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"[War XpMod] Congratulations! You are a level %i %s!",PlayerLevel[attacker],CLASSES[PlayerClass[attacker]])
    
PlayerLevel[attacker] += 1
    
}

    
ShowChat(attacker)
    
SaveData(attacker)
}

public 
ShowChat(id)
{       
    
client_print(id"(Level: %i) (XP: %i) (Class: %s)",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
}
public 
ChangeClass(id)
{
    new 
menu menu_create("Class Menu" "Class_Handle");
    
menu_additem(menu ,"SniperMan""1" 0);
    
menu_additem(menu ,"MachineGunner""2" 0);
    
menu_additem(menu ,"Rifle""3" 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[6] , 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,"You are now a %s",CLASSES[i])
    }
    else
    {
        
client_print(id,print_chat,"You are alredy a %s",CLASSES[i])
    }
 
    
menu_destroy(menu);
    return 
PLUGIN_CONTINUE
}
public 
client_connect(id)
{
    if(
get_pcvar_num(SaveXP) == 1)
    {
 
        
LoadData(id)
    
client_print(id,print_chat,"Welcome to War XpMod Server.")
    }
}
public 
client_putinserver(id)
{
    
set_task(1.0"ChangeClass"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 
on_spawn(id)
{
    if (
PlayerLevel[id] == 2
    {               
//
    
set_user_health(id135); 
    
set_user_gravity(id1.1);
    }
    
    if (
PlayerLevel[id] == 3
    {               
//
    
set_user_health(id145);  
    
set_user_gravity(id0.9);
    
set_user_rendering(idkRenderFxGlowShell25500kRenderNormal,get_pcvar_num(thickness))
    }
    
    if (
PlayerLevel[id] == 4
    {               
//
    
set_user_health(id185);  
    
set_user_gravity(id0.8);
    
set_user_rendering(idkRenderFxGlowShell71237231kRenderNormal,get_pcvar_num(thickness))
    }
    
    if (
PlayerLevel[id] == 5
    {               
//
    
set_user_health(id200);  
    
set_user_gravity(id0.7);
    
set_user_rendering(idkRenderFxGlowShell2552550kRenderNormal,get_pcvar_num(thickness))
    }
    
    if (
PlayerLevel[id] >= 6
    {               
//
    
set_user_health(id255); 
    
set_user_gravity(id0.6);
    
set_user_rendering(idkRenderFxGlowShell71237231kRenderNormal,get_pcvar_num(thickness))
    }


Many people confuse about the glow on 2nd level and after it.

xbatista 12-30-2008 04:20

Re: Glow on Team.
 
PHP Code:

public plugin_init()
{
        
RegisterHam(Ham_Spawn"player""fwHamPlayerSpawnPost"1)
}
public 
fwHamPlayerSpawnPost(iPlayer) {
        if (
is_user_alive(iPlayer))
        {
        
glowct()
        }
}
public 
glowct(){

    new 
Players[32], iNumid
    get_players
(PlayersiNum);
    for( new 
i=0i<iNumi++ ){
        
id Players[i]
           if (
get_user_team(id) == 2//CT
           
{
    
set_user_rendering(idkRenderFxGlowShell00255kRenderNormal,30)
           } 

Try this. :/

IneedHelp 12-30-2008 04:34

Re: Glow on Team.
 
@ianglowz

On the ResetHUD event get the user team and then if the team is CT (2) set the glow..

For example:

PHP Code:

if (PlayerLevel[id] == 9999 /*lol*/ && get_user_team(id) == 2)
          
// set_user_rendering here 


xbatista 12-30-2008 04:48

Re: Glow on Team.
 
YEAH!
PHP Code:

if (PlayerLevel[id] == 9999)
          
glowct() 

:}}}}}

SnoW 12-30-2008 05:01

Re: Glow on Team.
 
Guys, why would we give glow to all cts when one spawns? We get the player's id who spawns on the event, simplest thing is just check his team and make only him glow...
Though you did it with fun...

Code:

#include <amxmodx>
#include <fun>
 
public plugin_init()
{
      RegisterHam(Ham_Spawn, "player", "Spawn", 1)
}
public Spawn(iPlayer)

{
      if (is_user_alive(iPlayer) && get_user_team(iPlayer) == 2) //Ofc if you want lvl check here...
      {
            set_user_rendering(iPlayer, kRenderFxGlowShell, 0, 0, 255, kRenderNormal,30)
      }
}



xbatista 12-30-2008 05:04

Re: Glow on Team.
 
I don't read last post :mrgreen:
Quote:

Many people confuse about the glow on 2nd level and after it.

ianglowz 12-30-2008 05:25

Re: Glow on Team.
 
I very confused to put where.Anyone,can edit that code?

EDIT:I'm very confuse because I had a headache.Now i will try 1 by 1.:D

I have one question.

Can you give the mean of operator?

I try || operator.But not work.What the different there?

2nd Edit:I get error on compiling also.

Code:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Invalid expression, assumed zero on line 178
Error: Expected token: ";", but found ")" on line 178
Error: Invalid expression, assumed zero on line 178
Error: Too many error messages on one line on line 178

Compilation aborted.
4 Errors.
Could not locate output file C:\Documents and Settings\home\Desktop\Pejuang\server\New server\hlds\czero\addons\amxmodx\scripting\war_xpmod.amx (compile failed).

PHP Code:

if (PlayerLevel[id] == 3) && get_user_team(id) == 2)
    {               
//
    
set_user_health(id145);  
    
set_user_gravity(id0.9);
    
set_user_rendering(idkRenderFxGlowShell25500kRenderNormal,get_pcvar_num(thickness))
    } 

Trying SnoW code.:D

3rd edit:SnoW,can you edit my code?

xbatista 12-30-2008 05:50

Re: Glow on Team.
 
This? 0_o

ianglowz 12-30-2008 06:22

Re: Glow on Team.
 
Thx,it work.+karma to all.:D


All times are GMT -4. The time now is 09:12.

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