db->query($s); $r = $q->fetchArray(SQLITE3_ASSOC); $this->id = $r["id"]; $this->attribute = $r["stat"]; $this->amount = $r["amount"]; $this->area = $r["area"]; $this->element = $r["element"]; } /** * Gets the path to the skill image. The image must be in the * img/skill_leader/ directory, and its name must be the skill id, * padded with '0' to 4 digites, and the extension must be '.png'. * * @return Path to the image, or a path to a fixed unknown image if it * doesn't exist. */ public function get_image(){ global $base_dir; global $path; if (file_exists($base_dir . "img/content/skill_leader/" . str_pad($this->id, 4, '0', STR_PAD_LEFT) . ".png")){ return $path["img"]["skill_leader"] . str_pad($this->id, 4, '0', STR_PAD_LEFT) . ".png"; } else{ return $path["img"]["root"] . "unknown.png"; } } /** * Composes a human readable description of the skill. * * @return The description. */ public function create_description(){ global $STAT; global $ELEMENT; global $EFFECT_AREA; $s = "Increases the "; switch ($this->attribute){ case $STAT["ATK"]: $s .= "attack power"; break; case $STAT["DEF"]: $s .= "defense"; break; case $STAT["HP"]: $s .= "HP"; break; case $STAT["SPD"]: $s .= "attack speed"; break; case $STAT["CRIT_RATE"]: $s .= "critical rate"; break; case $STAT["CRIT_DMG"]: $s .= "critical damage"; break; case $STAT["ACC"]: $s .= "accuracy"; break; case $STAT["RES"]: $s .= "resistance"; break; } $s .= " of ally monsters "; switch ($this->element){ case $ELEMENT["WATER"]: $s .= " with Water attribute "; break; case $ELEMENT["FIRE"]: $s .= " with Fire attribute "; break; case $ELEMENT["WIND"]: $s .= " with Wind attribute "; break; case $ELEMENT["LIGHT"]: $s .= " with Light attribute "; break; case $ELEMENT["DARK"]: $s .= " with Dark attribute "; break; } $s = $s . "by " . $this->amount . "%"; switch ($this->area){ case $EFFECT_AREA["DUNGEON"]: $s = $s . " in the Dungeons"; break; case $EFFECT_AREA["ARENA"]: $s = $s . " in the Arena"; break; case $EFFECT_AREA["GUILD"]: $s = $s . " in Guild content"; break; } $s = $s . "."; return $s; } } ?>