summaryrefslogtreecommitdiff
path: root/src/map/skill.cpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2013-05-22 22:51:51 -0700
committerBen Longbons <b.r.longbons@gmail.com>2013-05-22 22:51:51 -0700
commitcce12d0d059b3328ad74446b389445bd43e0a90b (patch)
treeb381c7aa8424870e1cf88470972597b25dfe4c68 /src/map/skill.cpp
parent10e0b85e0325e5e85f9c4b9e7fe6db02171134ee (diff)
downloadtmwa-cce12d0d059b3328ad74446b389445bd43e0a90b.tar.gz
tmwa-cce12d0d059b3328ad74446b389445bd43e0a90b.tar.bz2
tmwa-cce12d0d059b3328ad74446b389445bd43e0a90b.tar.xz
tmwa-cce12d0d059b3328ad74446b389445bd43e0a90b.zip
RAII-ify some arrays of block_list
Diffstat (limited to 'src/map/skill.cpp')
-rw-r--r--src/map/skill.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/map/skill.cpp b/src/map/skill.cpp
index 31621c8..f157d5b 100644
--- a/src/map/skill.cpp
+++ b/src/map/skill.cpp
@@ -281,7 +281,7 @@ int skill_attack(BF attack_type, struct block_list *src,
(skillid == SkillID::ZERO) ? 5 : type);
}
- map_freeblock_lock();
+ MapBlockLock lock;
/* 実際にダメージ処理を行う */
battle_damage(src, bl, damage, 0);
@@ -346,8 +346,6 @@ int skill_attack(BF attack_type, struct block_list *src,
pc_heal(sd, hp, sp);
}
- map_freeblock_unlock();
-
return (dmg.damage + dmg.damage2); /* 与ダメを返す */
}
@@ -402,7 +400,8 @@ int skill_castend_damage_id(struct block_list *src, struct block_list *bl,
return 1;
if (bl->type == BL::PC && pc_isdead((struct map_session_data *) bl))
return 1;
- map_freeblock_lock();
+
+ MapBlockLock lock;
switch (skillid)
{
case SkillID::NPC_POISON:
@@ -465,10 +464,8 @@ int skill_castend_damage_id(struct block_list *src, struct block_list *bl,
break;
default:
- map_freeblock_unlock();
return 1;
}
- map_freeblock_unlock();
return 0;
}
@@ -529,7 +526,7 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl,
if (dstsd && pc_isdead(dstsd))
return 1;
- map_freeblock_lock();
+ MapBlockLock lock;
switch (skillid)
{
case SkillID::NPC_SUMMONSLAVE:
@@ -549,7 +546,6 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl,
break;
}
- map_freeblock_unlock();
return 0;
}