diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-04-21 11:53:57 +0200 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-05-08 14:02:51 +0200 |
commit | 2e977bb3182332fce247c7bdee5db2c43c9de5ee (patch) | |
tree | c005f77c03215bdc1e54c9b1aab6ee76d997cc44 /src/scripting/lua.cpp | |
parent | 990cd4d2e5466d5c961fd5d7ee38e5100df962fe (diff) | |
download | manaserv-2e977bb3182332fce247c7bdee5db2c43c9de5ee.tar.gz manaserv-2e977bb3182332fce247c7bdee5db2c43c9de5ee.tar.xz manaserv-2e977bb3182332fce247c7bdee5db2c43c9de5ee.zip |
[Abilities] Moved the ability code into a own component
This later allows monsters and characters to use this component.
Diffstat (limited to 'src/scripting/lua.cpp')
-rw-r--r-- | src/scripting/lua.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/scripting/lua.cpp b/src/scripting/lua.cpp index 1f9c1cf..fd48f9b 100644 --- a/src/scripting/lua.cpp +++ b/src/scripting/lua.cpp @@ -1295,7 +1295,7 @@ static int entity_set_ability_mana(lua_State *s) Entity *c = checkCharacter(s, 1); const int ability = checkAbility(s, 2); const int mana = luaL_checkint(s, 3); - if (!c->getComponent<CharacterComponent>()->setAbilityMana(ability, mana)) + if (!c->getComponent<AbilityComponent>()->setAbilityMana(ability, mana)) { luaL_error(s, "set_ability_mana called with ability " @@ -1317,10 +1317,10 @@ static int entity_set_ability_mana(lua_State *s) static int entity_get_ability_mana(lua_State *s) { Entity *c = checkCharacter(s, 1); - auto *characterComponent = c->getComponent<CharacterComponent>(); + auto *abilityComponent = c->getComponent<AbilityComponent>(); const int ability = checkAbility(s, 2); - AbilityMap::iterator it = characterComponent->findAbility(ability); - luaL_argcheck(s, it != characterComponent->getAbilitiesEnd(), 2, + AbilityMap::iterator it = abilityComponent->findAbility(ability); + luaL_argcheck(s, it != abilityComponent->getAbilities().end(), 2, "character does not have ability"); lua_pushinteger(s, it->second.currentPoints); return 1; @@ -2301,7 +2301,7 @@ static int entity_give_ability(lua_State *s) const int ability = checkAbility(s, 2); const int currentMana = luaL_optint(s, 3, 0); - c->getComponent<CharacterComponent>()->giveAbility(ability, currentMana); + c->getComponent<AbilityComponent>()->giveAbility(ability, currentMana); return 0; } @@ -2317,7 +2317,7 @@ static int entity_has_ability(lua_State *s) Entity *c = checkCharacter(s, 1); const int ability = luaL_checkint(s, 2); - lua_pushboolean(s, c->getComponent<CharacterComponent>()->hasAbility(ability)); + lua_pushboolean(s, c->getComponent<AbilityComponent>()->hasAbility(ability)); return 1; } @@ -2336,9 +2336,9 @@ static int entity_take_ability(lua_State *s) Entity *c = checkCharacter(s, 1); const int ability = luaL_checkint(s, 2); - CharacterComponent *cc = c->getComponent<CharacterComponent>(); - lua_pushboolean(s, cc->hasAbility(ability)); - cc->takeAbility(ability); + auto *abilityComponent = c->getComponent<AbilityComponent>(); + lua_pushboolean(s, abilityComponent->hasAbility(ability)); + abilityComponent->takeAbility(ability); return 1; } |