diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-08-24 20:46:41 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-08-24 20:46:41 +0300 |
commit | b86d61e2e86f93f86c500eb578342af34d75eab1 (patch) | |
tree | 05bb3be097bfeda0177cf373acb3a9b44d7563e0 /src/resources/beingcommon.cpp | |
parent | f45bd8e9a3274bcdafff7f5704af275c31638607 (diff) | |
download | manaverse-b86d61e2e86f93f86c500eb578342af34d75eab1.tar.gz manaverse-b86d61e2e86f93f86c500eb578342af34d75eab1.tar.bz2 manaverse-b86d61e2e86f93f86c500eb578342af34d75eab1.tar.xz manaverse-b86d61e2e86f93f86c500eb578342af34d75eab1.zip |
Move ai attributes reading into BeingCommon.
Diffstat (limited to 'src/resources/beingcommon.cpp')
-rw-r--r-- | src/resources/beingcommon.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/resources/beingcommon.cpp b/src/resources/beingcommon.cpp index 2b63063f8..801759571 100644 --- a/src/resources/beingcommon.cpp +++ b/src/resources/beingcommon.cpp @@ -89,6 +89,50 @@ void BeingCommon::readWalkingAttributes(BeingInfo *const info, info->setBlockWalkMask(CAST_U8(block ^ allFlags)); } +void BeingCommon::readAiAttributes(BeingInfo *const info, + XmlNodePtrConst node) +{ + info->setStartFollowDist(XML::getProperty(node, + "startFollowDistance", 3)); + info->setFollowDist(XML::getProperty(node, + "followDistance", 0)); + info->setWarpDist(XML::getProperty(node, + "warpDistance", 11)); + + info->setTargetOffsetX(XML::getProperty(node, + "offsetX", 0)); + info->setTargetOffsetY(XML::getProperty(node, + "offsetY", 1)); + info->setSitOffsetX(XML::getProperty(node, + "sitOffsetX", 0)); + info->setSitOffsetY(XML::getProperty(node, + "sitOffsetY", 1)); + info->setMoveOffsetX(XML::getProperty(node, + "moveOffsetX", 0)); + info->setMoveOffsetY(XML::getProperty(node, + "moveOffsetY", 1)); + info->setDeadOffsetX(XML::getProperty(node, + "deadOffsetX", 0)); + info->setDeadOffsetY(XML::getProperty(node, + "deadOffsetY", 1)); + info->setAttackOffsetX(XML::getProperty(node, + "attackOffsetX", info->getTargetOffsetX())); + info->setAttackOffsetY(XML::getProperty(node, + "attackOffsetY", info->getTargetOffsetY())); + + info->setThinkTime(XML::getProperty(node, + "thinkTime", 500) / 10); + + info->setDirectionType(XML::getProperty(node, + "directionType", 1)); + info->setSitDirectionType(XML::getProperty(node, + "sitDirectionType", 1)); + info->setDeadDirectionType(XML::getProperty(node, + "deadDirectionType", 1)); + info->setAttackDirectionType(XML::getProperty(node, + "attackDirectionType", 4)); +} + bool BeingCommon::readObjectNodes(XmlNodePtrConst &spriteNode, SpriteDisplay &display, BeingInfo *const currentInfo, |