diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-06-28 21:59:59 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-06-28 21:59:59 +0300 |
commit | 503a2b302d9e13b99be4574e5d7b8821dd31504d (patch) | |
tree | 34ecba674db95cdedb9fe8f5767b0dfa22571e86 /src/resources | |
parent | 6207ffb9a38c7e3718b7c4d87500ea9360d4d44f (diff) | |
download | manaplus-503a2b302d9e13b99be4574e5d7b8821dd31504d.tar.gz manaplus-503a2b302d9e13b99be4574e5d7b8821dd31504d.tar.bz2 manaplus-503a2b302d9e13b99be4574e5d7b8821dd31504d.tar.xz manaplus-503a2b302d9e13b99be4574e5d7b8821dd31504d.zip |
Add validation for some xml parameters.
Diffstat (limited to 'src/resources')
-rw-r--r-- | src/resources/spritedef.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/resources/spritedef.cpp b/src/resources/spritedef.cpp index 5f3be9220..fd5178ec6 100644 --- a/src/resources/spritedef.cpp +++ b/src/resources/spritedef.cpp @@ -270,12 +270,13 @@ void SpriteDef::loadAnimation(XmlNodePtr animationNode, // Get animation frames for_each_xml_child_node(frameNode, animationNode) { - const int delay = XML::getProperty(frameNode, "delay", 0); + const int delay = XML::getIntProperty( + frameNode, "delay", 0, 0, 100000); int offsetX = XML::getProperty(frameNode, "offsetX", 0) + imageSet->getOffsetX(); int offsetY = XML::getProperty(frameNode, "offsetY", 0) + imageSet->getOffsetY(); - int rand = XML::getProperty(frameNode, "rand", 100); + int rand = XML::getIntProperty(frameNode, "rand", 100, 0, 100); offsetY -= imageSet->getHeight() - 32; offsetX -= imageSet->getWidth() / 2 - 16; @@ -305,7 +306,7 @@ void SpriteDef::loadAnimation(XmlNodePtr animationNode, const int start = XML::getProperty(frameNode, "start", -1); const int end = XML::getProperty(frameNode, "end", -1); const std::string value = XML::getProperty(frameNode, "value", ""); - int repeat = XML::getProperty(frameNode, "repeat", 1); + int repeat = XML::getIntProperty(frameNode, "repeat", 1, 0, 100); if (repeat < 1) { |