summaryrefslogtreecommitdiff
path: root/src/map/pc.c
diff options
context:
space:
mode:
authorMadCamel <madcamel@gmail.com>2009-10-06 19:35:25 -0400
committerMadCamel <madcamel@gmail.com>2009-10-06 19:35:25 -0400
commit29844ce5e2cd043551b46c1cd7bf3a36e357e3c6 (patch)
treebf42e1c857c08fce52ff5bcda8f74e27bdcd9638 /src/map/pc.c
parent592170e732fd5b75cf1447ed33e8999541048db8 (diff)
parent40792ad45c1929f999602dd386483ce99b0ed30a (diff)
downloadtmwa-29844ce5e2cd043551b46c1cd7bf3a36e357e3c6.tar.gz
tmwa-29844ce5e2cd043551b46c1cd7bf3a36e357e3c6.tar.bz2
tmwa-29844ce5e2cd043551b46c1cd7bf3a36e357e3c6.tar.xz
tmwa-29844ce5e2cd043551b46c1cd7bf3a36e357e3c6.zip
Merge branch 'master' of git://gitorious.org/tmw-eathena/mainline
Diffstat (limited to 'src/map/pc.c')
-rw-r--r--src/map/pc.c49
1 files changed, 23 insertions, 26 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index e2f8eec..5bb0009 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -4610,52 +4610,49 @@ int pc_statusup(struct map_session_data *sd,int type)
nullpo_retr(0, sd);
+ switch(type){
+ case SP_STR:
+ val= sd->status.str;
+ break;
+ case SP_AGI:
+ val= sd->status.agi;
+ break;
+ case SP_VIT:
+ val= sd->status.vit;
+ break;
+ case SP_INT:
+ val= sd->status.int_;
+ break;
+ case SP_DEX:
+ val= sd->status.dex;
+ break;
+ case SP_LUK:
+ val= sd->status.luk;
+ break;
+ }
+
need=pc_need_status_point(sd,type);
- if(type<SP_STR || type>SP_LUK || need<0 || need>sd->status.status_point){
- clif_statusupack(sd,type,0,0);
+ if(type<SP_STR || type>SP_LUK || need<0 || need>sd->status.status_point || val >= battle_config.max_parameter){
+ clif_statusupack(sd,type,0,val);
return 1;
}
switch(type){
case SP_STR:
- if(sd->status.str >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.str;
break;
case SP_AGI:
- if(sd->status.agi >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.agi;
break;
case SP_VIT:
- if(sd->status.vit >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.vit;
break;
case SP_INT:
- if(sd->status.int_ >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.int_;
break;
case SP_DEX:
- if(sd->status.dex >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.dex;
break;
case SP_LUK:
- if(sd->status.luk >= battle_config.max_parameter) {
- clif_statusupack(sd,type,0,0);
- return 1;
- }
val= ++sd->status.luk;
break;
}