Raised This Month: $51 Target: $400
 12% 

Skillpoints in SQL database


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
nelsonsimpsonz
Member
Join Date: Feb 2012
Old 05-05-2012 , 17:47   Skillpoints in SQL database
Reply With Quote #1

I need help to put this plugin (skillpoints) to save skillpoints in a SQL database

PHP Code:
#include <amxmodx> 
#include <amxmisc> 
#include <csx> 
#include <nvault> 
#include <cstrike> 
#include <fun> 

#define Plugin "iCoin-CM.com - Points" 
#define Version "1.0" 
#define Author "Miro" 

#define MAXSLOTS 32 

enum Color 
    
YELLOW 1
    
GREEN
    
TEAM_COLOR
    
GREY
    
RED
    
BLUE 


new 
TeamName[][] = { 
     
    
""
    
"TERRORIST"
    
"CT"
    
"SPECTATOR" 
     


new 
kill_pointsdeath_pointstime_points
new 
def_pointsboom_points
new 
head_pointsknife_pointsnade_pointstk_pointsskill_points
new 
TeamInfo,SayText,MaxSlots
new 
points[32], vote_choices[3
new 
bool:IsConnected[MAXSLOTS 1]; 

public 
plugin_init() 

     
    
register_plugin(PluginVersionAuthor); 
     
    
kill_points register_cvar("PS_kill_points""1"); 
    
death_points register_cvar("PS_death_points""1"); 
     
    
def_points register_cvar("PS_defusion_points""5"); 
    
boom_points register_cvar("PS_boom_points""4"); 
     
    
time_points register_cvar("PS_time_points""15"); 
    
head_points register_cvar("PS_head_points""2"); 
     
    
knife_points register_cvar("PS_knife_points""4"); 
    
nade_points register_cvar("PS_nade_points""4"); 
     
    
tk_points register_cvar("PS_tk_points""8"); 
    
skill_points register_cvar("PS_skill_points""3"); 
     
    
register_clcmd("say .skill""show_points"); 
    
register_clcmd("say .top15""show_top15"); 
     
    
register_concmd("amx_points""cmd_points"ADMIN_BAN" - <name> <points> Set's someones points"); 
    
register_concmd("amx_vote_point""cmd_vote_points"ADMIN_BAN" - <name> <reason> <give/remove> Start's a point vote"); 
    
register_concmd("amx_showpoints","cmd_show_points",ADMIN_BAN," - <name> Show points of a player!"); 
     
    
TeamInfo get_user_msgid("TeamInfo"); 
    
SayText get_user_msgid("SayText"); 
    
MaxSlots get_maxplayers(); 
     


public 
cmd_show_points(idlevelcid

    if(!
cmd_access(idlevelcid2)) 
        return 
PLUGIN_HANDLED
     
    new 
arg[32], pname[32
    
read_argv(1arg31
     
    new 
player cmd_target(idarg8
     
    
get_user_name(player,pname,31); 
     
    if(!
player
        return 
PLUGIN_HANDLED
     
    
client_print(id,print_console,"%s, tens %d skillpoints!",pname,points[player]); 
     
    return 
1


public 
cmd_points(idlevelcid

    if(!
cmd_access(idlevelcid2)) 
        return 
PLUGIN_HANDLED
     
    new 
arg1[32], arg2[11], name[32
     
    
read_argv(1arg131
    
read_argv(2arg210
     
    new 
player cmd_target(idarg11
     
    if(!
player
        return 
PLUGIN_HANDLED
     
    
points[player] = str_to_num(arg2
     
    
get_user_name(playername31
    
client_print(idprint_console,"Successfully set %s skillpoints to %s!"namearg2
    
ColorChat(player,GREY,"Admin deu skillpoints a ^x04%s"arg2
     
    return 
PLUGIN_HANDLED

public 
cmd_vote_points(idlevelcid

    if(!
cmd_access(idlevelcid2)) 
        return 
PLUGIN_HANDLED
     
    new 
arg1[32], arg2[132], arg3[17
     
    
read_argv(1arg131
    
read_argv(2arg2131
    
read_argv(3arg316
     
    if(!
equal(arg3"give") && !equal(arg3"remove")) 
    { 
        
client_print(idprint_chat"invalid mode. Valid modes are: give, remove."
        return 
PLUGIN_HANDLED
    } 
     
    new 
player cmd_target(idarg12)     
    
display_menu(playerarg2arg3
     
    return 
PLUGIN_HANDLED

public 
save_points(id

    new 
valut nvault_open("points"
     
    if(
valut == INVALID_HANDLE
        
set_fail_state("nValut returned invalid handle"
     
    new 
key[62], value[10], ip[33
     
    
//get_user_ip(id, ip, 32, 1); 
    
get_user_authid(idip32); 
     
    
format(key61,"%s-points"ip
    
format(value9,"%d"points[id]) 
     
    
nvault_set(valutkeyvalue
    
nvault_close(valut)     
     
    return 
PLUGIN_CONTINUE

public 
load_points(id

    new 
valut nvault_open("points"
     
    if(
valut == INVALID_HANDLE
        
set_fail_state("nValut returned invalid handle"
     
    new 
key[100], ip[33
     
    
//get_user_ip(id, ip, 32, 1); 
    
get_user_authid(idip32); 
     
    
formatex(key99,"%s-points"ip
     
    
points[id] = nvault_get(valutkey)     
    
nvault_close(valut
     
    return 
PLUGIN_CONTINUE

public 
show_points(id

    
ColorChat(idGREEN"[ iCoin-CM.com ] Tu tens ^x03%d ^x01skillpoints!"points[id]) 

public 
give_time_points(id

    if(
cs_get_user_team(id) != CS_TEAM_SPECTATOR
    { 
        
points[id] += get_pcvar_num(time_points
        
ColorChat(idGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints por estares 1h no servidor.",get_pcvar_num(time_points)) 
    } 

public 
client_putinserver(id

    
set_task(3600.0"give_time_points"id,_,_,"b"
    
set_task(20.0"advertise"id
    
load_points(id

public 
client_disconnect(id

    
save_points(id

public 
client_death(killervictimweaponhitplaceTK

    if(
TK
    { 
        
points[killer] -= get_pcvar_num(tk_points
        
ColorChat(killerGREEN"[ iCoin-CM.com ] Perdeste ^x03%d ^x01skillpoints!"get_pcvar_num(tk_points)) 
         
        return 
PLUGIN_CONTINUE 
    

     
    
points[killer] += get_pcvar_num(kill_points
    
points[victim] -= get_pcvar_num(death_points
    
ColorChat(killerGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(kill_points)) 
    
ColorChat(victimGREEN"[ iCoin-CM.com ] Perdeste ^x03%d ^x01skillpoints!"get_pcvar_num(death_points)) 
     
    if(
hitplace == HIT_HEAD
    { 
        
points[killer] += get_pcvar_num(head_points
        
ColorChat(killerGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(head_points)) 
    } 
     
    if(
weapon == CSW_KNIFE
    { 
        
points[killer] += get_pcvar_num(knife_points
        
ColorChat(killerGREEN "[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(knife_points)) 
    } 
     
    if(
weapon == CSW_HEGRENADE
    { 
        
points[killer] += get_pcvar_num(nade_points
        
ColorChat(killerGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(nade_points)) 
    } 
     
    if(
weapon == CSW_KNIFE && hitplace == HIT_HEAD
    { 
        
points[killer] += get_pcvar_num(skill_points
        
ColorChat(killerGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(skill_points)) 
    } 
     
    return 
PLUGIN_CONTINUE

public 
bomb_explode(planter

    
points[planter] += get_pcvar_num(boom_points
    
ColorChat(planterGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(boom_points)) 

public 
bomb_defused(defuser

    
points[defuser] += get_pcvar_num(def_points
    
ColorChat(defuserGREEN"[ iCoin-CM.com ] Ganhaste ^x03%d ^x01skillpoints!"get_pcvar_num(def_points)) 

public 
show_top15(id

    new 
icount
    static 
sort[33][2], maxPlayers
     
    if(!
maxPlayersmaxPlayers get_maxplayers(); 
     
    for(
i=1;i<=maxPlayers;i++) 
    { 
        
sort[count][0] = i
        
sort[count][1] = points[i]; 
        
count++; 
    } 
     
    
SortCustom2D(sort,count,"stats_custom_compare"); 
     
    new 
motd[1024], len     
     
    len 
format(motd1023,"<body bgcolor=#000000><font color=#FFB000><pre>"
    
len += format(motd[len], 1023-len,"%2s %-22.22s %6s^n""#""Nick""SkillPoints"
     
    static 
name[32]     
    for(new 
015a++) 
    { 
        
get_user_name(sort[a][0], name31)         
        
len += format(motd[len], 1023-len,"%2d %-22.22s %6d^n"1namesort[a][1]) 
    } 
     
    
len += format(motd[len], 1023-len,"</body></font></pre>"
    
show_motd(idmotd"iCoin-CM.com - SkillPoints"
     
    return 
PLUGIN_CONTINUE

public 
stats_custom_compare(elem1[],elem2[]) 

    if(
elem1[1] > elem2[1]) return -1
    else if(
elem1[1] < elem2[1]) return 1
         
    return 
0

public 
display_menu(idreason[], mode[]) 

    new 
temp[56], name[32
     
    
get_user_name(idname31
     
    if(
equal(mode"give")) 
        
format(temp55"\rGive %s a point because %s?"namereason
    else if(
equal(mode"remove")) 
        
format(temp55"\rRemove a point from %s because %s?"namereason
     
    new 
menu menu_create(temp"menu_handler"
     
    
menu_additem(menu"\wSim""1"0
    
menu_additem(menu"\wNao""2"0
     
    for(new 
1get_playersnum(); i++) 
        
menu_display(imenu0
     
    
set_task(30.0"finish_vote"idmode16

public 
finish_vote(idmode[]) 

    
client_print(0print_chat"Voting over..."
     
    if(
vote_choices[1] > vote_choices[2]) 
    { 
        if(
equal(mode"give")) 
        {             
            
points[id]++ 
             
            
client_print(0print_chat"Choise ^"yes^" has won the vote!"
            
client_print(idprint_chat"You have been given a point"
        } 
        else if(
equal(mode"remove")) 
        { 
            
points[id]-- 
             
            
client_print(0print_chat"Choise ^"yes^" has won the vote!"
            
client_print(idprint_chat"You have lost a point"
        } 
    } 
     
    else if(
vote_choices[1] < vote_choices[2]) 
    { 
        if(
equal(mode"give")) 
        {         
            
client_print(0print_chat"Choise ^"no^" has won the vote!"
            
client_print(idprint_chat"Sorry, no point for you! =)"
        } 
        else if(
equal(mode"remove")) 
        {         
            
client_print(0print_chat"Choise ^"no^" has won the vote!"
            
client_print(idprint_chat"You where lucky and didn't lose any points"
        } 
    } 
     
    for(new 
1get_playersnum(); i++) 
        
menu_cancel(i
     
    return 
PLUGIN_CONTINUE

public 
menu_handler(idmenuitem

    if (
item == MENU_EXIT
    { 
        
menu_destroy(menu
        return 
PLUGIN_HANDLED 
    

     
    new 
data[6], name[32
    new 
accesscallback 
     
    menu_item_getinfo
(menuitemaccessdata5__callback
     
    new 
key str_to_num(data
    
get_user_name(idname31
     
    
vote_choices[key]++ 
    
client_print(0print_chat,"%s voted on %s"namevote_choices[key] == "yes":"no"
     
    
menu_cancel(id
     
    return 
PLUGIN_HANDLED

public 
advertise(id

    
set_hudmessage(0,25500.300.8516.06.0); 
    
show_hudmessage(id,"Bem vindo ao servidor da Insert Coin! Escreve .skill .top15.^nTu tens: %d skillpoints!",points[id]) 

stock ColorChat(idColor:type, const msg[], any:...) 

    static 
message[256]; 
    switch(
type
    {     
        case 
YELLOW
        { 
            
message[0] = 0x01
        } 
        case 
GREEN
        { 
            
message[0] = 0x04
        } 
        default: { 
            
message[0] = 0x03
        } 
    } 
    
vformat(message[1], 251msg4); 
    
message[192] = '^0'
    new 
teamColorChangeindexMSG_Type
    if(!
id
    { 
        
index FindPlayer(); 
        
MSG_Type MSG_ALL
        } else { 
        
MSG_Type MSG_ONE
        
index id
    } 
    
team get_user_team(index);  
    
ColorChange ColorSelection(indexMSG_Typetype); 
    
ShowColorMessage(indexMSG_Typemessage); 
    if(
ColorChange
    { 
        
Team_Info(indexMSG_TypeTeamName[team]); 
    } 

stock ShowColorMessage(idtypemessage[]) 

    
message_begin(typeSayText_id); 
    
write_byte(id)   
    
write_string(message); 
    
message_end();  

stock Team_Info(idtypeteam[]) 

    
message_begin(typeTeamInfo_id); 
    
write_byte(id); 
    
write_string(team); 
    
message_end(); 
    return 
1

stock ColorSelection(indextypeColor:Type

    switch(
Type
    { 
        case 
RED
        { 
            return 
Team_Info(indextypeTeamName[1]); 
        } 
        case 
BLUE
        { 
            return 
Team_Info(indextypeTeamName[2]); 
        } 
        case 
GREY
        { 
            return 
Team_Info(indextypeTeamName[0]); 
        } 
    } 
    return 
0

stock FindPlayer() 

    new 
= -1
    while(
<= MaxSlots
    { 
        if(
IsConnected[++i]) 
        { 
            return 
i
        } 
    } 
    return -
1

Thanks
nelsonsimpsonz is offline
quark
Veteran Member
Join Date: Oct 2011
Location: Your mind.
Old 05-05-2012 , 19:18   Re: Skillpoints in SQL database
Reply With Quote #2

Dont change credits, you didnt made this plugin.. Put original author.
__________________

Check out My Plugins:
qServerInfo ; ASKTAG
quark is offline
nelsonsimpsonz
Member
Join Date: Feb 2012
Old 05-06-2012 , 04:40   Re: Skillpoints in SQL database
Reply With Quote #3

The original autor is Miro...
http://forums.alliedmods.net/showpos...70&postcount=1
nelsonsimpsonz is offline
quark
Veteran Member
Join Date: Oct 2011
Location: Your mind.
Old 05-06-2012 , 05:26   Re: Skillpoints in SQL database
Reply With Quote #4

No its not, he changed credits. He is noob.
__________________

Check out My Plugins:
qServerInfo ; ASKTAG
quark is offline
nelsonsimpsonz
Member
Join Date: Feb 2012
Old 05-06-2012 , 07:39   Re: Skillpoints in SQL database
Reply With Quote #5

Ok.
Aniway, can you make this plugin ?
nelsonsimpsonz is offline
Exoid
Member
Join Date: Oct 2009
Location: Faro|Portugal
Old 05-06-2012 , 08:14   Re: Skillpoints in SQL database
Reply With Quote #6

Can you use search before posting? .. Just type 2/3 words ...
Exoid is offline
nelsonsimpsonz
Member
Join Date: Feb 2012
Old 05-06-2012 , 08:39   Re: Skillpoints in SQL database
Reply With Quote #7

I can't find...
nelsonsimpsonz is offline
Old 05-06-2012, 18:04
nelsonsimpsonz
This message has been deleted by Exolent[jNr]. Reason: Don't bump until 2 weeks have passed since last post.
Old 05-06-2012, 18:05
Bilal Pro
This message has been deleted by Exolent[jNr]. Reason: Don't bump until 2 weeks have passed since last post.
capozblack
Member
Join Date: Mar 2011
Location: Portugal
Old 05-09-2012 , 14:19   Re: Skillpoints in SQL database
Reply With Quote #8

quark: He is noob? and you never have changed the author of any plugin?

Exoid: If you dis it because there does not send the link instead of giving an explanation of bullshit?
__________________
capozblack is offline
Send a message via MSN to capozblack
Reply



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 19:27.


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