mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-27 09:49:22 +02:00
Fix if <flags> is not present in monster.xml
This commit is contained in:
parent
e5b4d2c6b3
commit
81b6652738
@ -15,11 +15,11 @@
|
||||
|
||||
/**
|
||||
* Wrapper for monsters files DOMDocument.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* Note: as this class extends {@link http://www.php.net/manual/en/ref.dom.php DOMDocument class} and contains exacly file XML tree you can work on it as on normal DOM tree.
|
||||
* </p>
|
||||
*
|
||||
*
|
||||
* @package POT
|
||||
* @version 0.1.3
|
||||
* @property-read string $name Monster name.
|
||||
@ -44,14 +44,14 @@ class OTS_Monster extends DOMDocument
|
||||
{
|
||||
$this->loaded = parent::loadXML($source, $options);
|
||||
}
|
||||
|
||||
|
||||
public function loaded()
|
||||
{
|
||||
return $this->loaded;
|
||||
}
|
||||
/**
|
||||
* Returns monster name.
|
||||
*
|
||||
*
|
||||
* @return string Name.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -62,7 +62,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns monster race.
|
||||
*
|
||||
*
|
||||
* @return string Race.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -73,7 +73,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns amount of experience for killing this monster.
|
||||
*
|
||||
*
|
||||
* @return int Experience points.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -84,7 +84,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns monster speed.
|
||||
*
|
||||
*
|
||||
* @return int Speed.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -95,7 +95,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns amount of mana required to summon this monster.
|
||||
*
|
||||
*
|
||||
* @return int|bool Mana required (false if not possible).
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -114,7 +114,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns monster HP.
|
||||
*
|
||||
*
|
||||
* @return int Hit points.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -125,28 +125,29 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns all monster flags (in format flagname => value).
|
||||
*
|
||||
*
|
||||
* @return array Flags.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
public function getFlags()
|
||||
{
|
||||
$flags = array();
|
||||
public function getFlags()
|
||||
{
|
||||
$flags = array();
|
||||
|
||||
// read all flags
|
||||
foreach( $this->documentElement->getElementsByTagName('flags')->item(0)->getElementsByTagName('flag') as $flag)
|
||||
{
|
||||
$flag = $flag->attributes->item(0);
|
||||
if ($this->documentElement->getElementsByTagName('flags')->item(0)) {
|
||||
foreach( $this->documentElement->getElementsByTagName('flags')->item(0)->getElementsByTagName('flag') as $flag)
|
||||
{
|
||||
$flag = $flag->attributes->item(0);
|
||||
|
||||
$flags[$flag->nodeName] = (int) $flag->nodeValue;
|
||||
}
|
||||
$flags[$flag->nodeName] = (int) $flag->nodeValue;
|
||||
}
|
||||
}
|
||||
|
||||
return $flags;
|
||||
}
|
||||
return $flags;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns specified flag value.
|
||||
*
|
||||
*
|
||||
* @param string $flag Flag.
|
||||
* @return int|bool Flag value (false if not set).
|
||||
* @throws DOMException On DOM operation error.
|
||||
@ -169,7 +170,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns voices that monster can sound.
|
||||
*
|
||||
*
|
||||
* @return array List of voices.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -214,17 +215,17 @@ class OTS_Monster extends DOMDocument
|
||||
$chance = 100000;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$count = $item->getAttribute('countmax');
|
||||
if(empty($count)) {
|
||||
$count = 1;
|
||||
}
|
||||
|
||||
|
||||
$id = $item->getAttribute('id');
|
||||
if(empty($id)) {
|
||||
$id = $item->getAttribute('name');
|
||||
}
|
||||
|
||||
|
||||
$loot[] = array('id' => $id, 'count' => $count, 'chance' => $chance);
|
||||
}
|
||||
}
|
||||
@ -234,11 +235,11 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns all possible loot.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* In order to use this method you have to have global items list loaded.
|
||||
* </p>
|
||||
*
|
||||
*
|
||||
* @version 0.1.0
|
||||
* @since 0.1.0
|
||||
* @return array List of item types.
|
||||
@ -275,7 +276,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns all monster immunities.
|
||||
*
|
||||
*
|
||||
* @return array Immunities.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -306,7 +307,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Checks if monster has given immunity.
|
||||
*
|
||||
*
|
||||
* @param string $name Immunity to check.
|
||||
* @return bool Immunity state.
|
||||
* @throws DOMException On DOM operation error.
|
||||
@ -334,7 +335,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns monster defense rate.
|
||||
*
|
||||
*
|
||||
* @return int Defense rate.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -353,7 +354,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns monster armor.
|
||||
*
|
||||
*
|
||||
* @return int Armor rate.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -372,7 +373,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns list of special defenses.
|
||||
*
|
||||
*
|
||||
* @return array List of defense effects.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -396,7 +397,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns list of monster attacks.
|
||||
*
|
||||
*
|
||||
* @return array List of attafck effects.
|
||||
* @throws DOMException On DOM operation error.
|
||||
*/
|
||||
@ -420,7 +421,7 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Magic PHP5 method.
|
||||
*
|
||||
*
|
||||
* @version 0.1.0
|
||||
* @since 0.1.0
|
||||
* @param string $name Property name.
|
||||
@ -481,11 +482,11 @@ class OTS_Monster extends DOMDocument
|
||||
|
||||
/**
|
||||
* Returns string representation of XML.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* If any display driver is currently loaded then it uses it's method. Otherwise just returns monster XML content.
|
||||
* </p>
|
||||
*
|
||||
*
|
||||
* @version 0.1.3
|
||||
* @since 0.1.0
|
||||
* @return string String representation of object.
|
||||
|
Loading…
x
Reference in New Issue
Block a user