summaryrefslogtreecommitdiff
path: root/src/map/skill.cpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2013-06-11 21:55:13 -0700
committerBen Longbons <b.r.longbons@gmail.com>2013-06-11 23:27:33 -0700
commit8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13 (patch)
tree15e8a4841af992e17794f26fc7991ed40c35bd51 /src/map/skill.cpp
parent8c6072df499ef9068346fbe8313b63dbba1e4e82 (diff)
downloadtmwa-8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13.tar.gz
tmwa-8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13.tar.bz2
tmwa-8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13.tar.xz
tmwa-8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13.zip
Allegedly remove all manual memory management
Diffstat (limited to 'src/map/skill.cpp')
-rw-r--r--src/map/skill.cpp34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/map/skill.cpp b/src/map/skill.cpp
index 4f71f06..4e195be 100644
--- a/src/map/skill.cpp
+++ b/src/map/skill.cpp
@@ -427,8 +427,10 @@ int skill_castend_damage_id(dumb_ptr<block_list> src, dumb_ptr<block_list> bl,
skill_area_temp_hp = battle_get_hp(src);
map_foreachinarea(std::bind(skill_area_sub, ph::_1, src, skillid, skilllv,
tick, flag | BCT_ENEMY | BCT_lo_x01, skill_castend_damage_id),
- bl->bl_m, bl->bl_x - 5, bl->bl_y - 5,
- bl->bl_x + 5, bl->bl_y + 5, BL::NUL);
+ bl->bl_m,
+ bl->bl_x - 5, bl->bl_y - 5,
+ bl->bl_x + 5, bl->bl_y + 5,
+ BL::NUL);
battle_damage(src, src, md->hp, 0);
}
}
@@ -450,8 +452,10 @@ int skill_castend_damage_id(dumb_ptr<block_list> src, dumb_ptr<block_list> bl,
skill_area_temp_id = bl->bl_id;
map_foreachinarea(std::bind(skill_area_sub, ph::_1, src, skillid, skilllv,
tick, flag | BCT_ENEMY | BCT_lo_x01, skill_castend_damage_id),
- bl->bl_m, bl->bl_x - 0, bl->bl_y - 0,
- bl->bl_x + 0, bl->bl_y + 0, BL::NUL);
+ bl->bl_m,
+ bl->bl_x - 0, bl->bl_y - 0,
+ bl->bl_x + 0, bl->bl_y + 0,
+ BL::NUL);
}
}
break;
@@ -1342,18 +1346,14 @@ int skill_readdb(void)
skill_db[i].stat = scan_stat(split[16]);
- char *tmp = strdup(split[17]);
- {
- // replace "_" by " "
- char *s = tmp;
- while ((s = strchr(s, '_')))
- *s = ' ';
- if ((s = strchr(tmp, '\t'))
- || (s = strchr(tmp, ' '))
- || (s = strchr(tmp, '\n')))
- *s = '\000';
- }
- skill_lookup_by_id(i).desc = tmp;
+ std::string tmp = split[17];
+ size_t space = tmp.find_first_of(" \t\n");
+ if (space != std::string::npos)
+ tmp.resize(space);
+ for (char& c : tmp)
+ if (c == '_')
+ c = ' ';
+ skill_lookup_by_id(i).desc = std::move(tmp);
}
fclose_(fp);
PRINTF("read db/skill_db.txt done\n");
@@ -1397,7 +1397,7 @@ skill_name_db& skill_lookup_by_id(SkillID id)
skill_name_db& skill_lookup_by_name(const char *name)
{
for (skill_name_db& ner : skill_names)
- if (!strcasecmp(name, ner.name) || !strcasecmp(name, ner.desc))
+ if (!strcasecmp(name, ner.name.c_str()) || !strcasecmp(name, ner.desc.c_str()))
return ner;
return skill_names[num_names - 1];
}