summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorcelest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-23 11:44:57 +0000
committercelest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-23 11:44:57 +0000
commit1b008a629ddb633d91a70e2c037924fab10e2d6c (patch)
tree9d74acfa108d52affea8481d0edc8639f4049d9f /src/map
parentae6da4b867571ac6b53198e56b11a31d037f3dd2 (diff)
downloadhercules-1b008a629ddb633d91a70e2c037924fab10e2d6c.tar.gz
hercules-1b008a629ddb633d91a70e2c037924fab10e2d6c.tar.bz2
hercules-1b008a629ddb633d91a70e2c037924fab10e2d6c.tar.xz
hercules-1b008a629ddb633d91a70e2c037924fab10e2d6c.zip
* Updated Sacrifice
* Fixed compile errors in party.c * Moved SC_EDP back to 114 git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@750 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r--src/map/battle.c17
-rw-r--r--src/map/party.c2
-rw-r--r--src/map/skill.h15
3 files changed, 17 insertions, 17 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index ef05f16a8..1dd13b67b 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -3490,16 +3490,6 @@ static struct Damage battle_calc_pc_weapon_attack(
damage = damage*(200+20*skill_lv+20*pc_checkskill(sd,AS_POISONREACT))/100;
damage2 = damage2*(200+20*skill_lv+20*pc_checkskill(sd,AS_POISONREACT))/100;
break;
- case PA_SACRIFICE:
- if(sd){
- int hp, mhp, damage3;
- hp = battle_get_hp(src);
- mhp = battle_get_max_hp(src);
- damage3 = mhp*9/100;
- damage = damage*damage3*(90+10*skill_lv)/10000;
- damage2 = damage2*damage3*(90+10*skill_lv)/10000;
- }
- break;
case ASC_BREAKER: // -- moonsoul (special damage for ASC_BREAKER skill)
if(sd){
int damage3;
@@ -3614,11 +3604,12 @@ static struct Damage battle_calc_pc_weapon_attack(
damage += damage * (150 + sc_data[SC_EDP].val1 * 50) / 100;
no_cardfix = 1;
}
- if (!skill_num && !(t_mode&0x20) && sc_data[SC_SACRIFICE].timer != -1) {
+ // sacrifice works on boss monsters, and does 9% damage to self [Celest]
+ if (!skill_num && /*!(t_mode&0x20) &&*/ sc_data[SC_SACRIFICE].timer != -1) {
int mhp = battle_get_max_hp(src);
- int dmg = mhp * (5 + sc_data[SC_SACRIFICE].val1 * 5) / 1000;
+ int dmg = mhp * 9/100;
pc_heal(sd, -dmg, 0);
- damage = dmg * (90 + sc_data[SC_SACRIFICE].val1 * 15) / 100;
+ damage = dmg * (90 + sc_data[SC_SACRIFICE].val1 * 10) / 100;
damage2 = 0;
hitrate = 1000000;
s_ele = 0;
diff --git a/src/map/party.c b/src/map/party.c
index 9443608fb..ddaed7fc7 100644
--- a/src/map/party.c
+++ b/src/map/party.c
@@ -591,7 +591,7 @@ int party_exp_share(struct party *p,int map,int base_exp,int job_exp,int zeny)
return 0;
for(i=0;i<MAX_PARTY;i++)
if((sd=p->member[i].sd)!=NULL && sd->bl.m==map && session[sd->fd] != NULL) {
- if (/* pc_issit(sd) || */ (sd->chatID != NULL) || (sd->idletime < (time(0) - 120)))
+ if (/* pc_issit(sd) || */ sd->chatID || (sd->idletime < (time(0) - 120)))
continue;
#ifdef TWILIGHT
pc_gainexp(sd,base_exp,job_exp);
diff --git a/src/map/skill.h b/src/map/skill.h
index 5baf42024..f98893120 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -1,4 +1,4 @@
-// $Id: skill.h,v 1.5 2004/12/3 7:53:26 PM Celestia $
+// $Id: skill.h,v 1.5 2004/12/23 7:43:16 PM Celestia $
#ifndef _SKILL_H_
#define _SKILL_H_
@@ -223,6 +223,7 @@ enum { // struct map_session_data の status_changeの番?テ?ブル
SC_SPEEDPOTION1 = 38,
SC_SPEEDPOTION2 = 39,
SC_SPEEDPOTION3 = 40,
+//-- 40-50
SC_STRIPWEAPON = 50,
SC_STRIPSHIELD = 51,
SC_STRIPARMOR = 52,
@@ -238,6 +239,7 @@ enum { // struct map_session_data の status_changeの番?テ?ブル
SC_DEFENDER = 62,
SC_AUTOSPELL = 65,
SC_SPEARSQUICKEN = 68,
+//-- 69-85
SC_EXPLOSIONSPIRITS = 86,
SC_STEELBODY = 87,
SC_COMBO = 89,
@@ -245,21 +247,28 @@ enum { // struct map_session_data の status_changeの番?テ?ブル
SC_FROSTWEAPON = 91,
SC_LIGHTNINGLOADER = 92,
SC_SEISMICWEAPON = 93,
+//-- 94-102
SC_AURABLADE = 103, /* オ?ラブレ?ド */
SC_PARRYING = 104, /* パリイング */
SC_CONCENTRATION = 105, /* コンセントレ?ション */
SC_TENSIONRELAX = 106, /* テンションリラックス */
SC_BERSERK = 107, /* バ?サ?ク */
+//-- 108, 109
SC_ASSUMPTIO = 110, /* アシャンプティオ */
+//-- 111, 112
SC_MAGICPOWER = 113, /* 魔法力?幅 */
+//-- 114
SC_TRUESIGHT = 115, /* トゥル?サイト */
SC_WINDWALK = 116, /* ウインドウォ?ク */
SC_MELTDOWN = 117, /* メルトダウン */
SC_CARTBOOST = 118, /* カ?トブ?スト */
+//-- 119
SC_REJECTSWORD = 120, /* リジェクトソ?ド */
SC_MARIONETTE = 121, /* マリオネットコントロ?ル */
+//-- 122, 123
SC_HEADCRUSH = 124, /* ヘッドクラッシュ */
SC_JOINTBEAT = 125, /* ジョイントビ?ト */
+//-- 126, 127
SC_STONE = 128,
SC_FREEZE = 129,
@@ -314,7 +323,7 @@ enum { // struct map_session_data の status_changeの番?テ?ブル
SC_SPIDERWEB =180, /* スパイダ?ウェッブ */
SC_MEMORIZE =181, /* メモライズ */
SC_DPOISON =182, /* 猛毒 */
- SC_EDP =183, /* エフェクトが判明したら移動 */
+// SC_EDP =183, // moved
SC_SACRIFICE =184, /* サクリファイス */
SC_WEDDING =187, //結婚用(結婚衣裳になって?くのが?いとか)
SC_NOCHAT =188, //赤エモ?態
@@ -332,7 +341,7 @@ enum { // struct map_session_data の status_changeの番?テ?ブル
SC_SIGHTTRASHER =73,
// SC_BASILICA =125, // 125 is the same id as joint break
SC_BASILICA =102, // temporarily use this before an actual id is found [celest]
-// SC_EDP =114, //
+ SC_EDP =114, /* エフェクトが判明したら移動 */
SC_MARIONETTE2 =122, // Marionette target
SC_ENSEMBLE =159,
SC_FOGWALL =178,