OSDN Git Service

#17692 - Append skill list.
authormumin <mumincacao@users.sourceforge.jp>
Sun, 13 Sep 2009 10:58:13 +0000 (19:58 +0900)
committermumin <mumincacao@users.sourceforge.jp>
Sun, 13 Sep 2009 10:58:13 +0000 (19:58 +0900)
17 files changed:
documents/changes.en.txt
documents/changes.ja.txt
trust_path/modules/sd3rd/actions/SkillListAction.class.php [new file with mode: 0644]
trust_path/modules/sd3rd/class/AbstractAction.class.php
trust_path/modules/sd3rd/class/AbstractMasterHandler.class.php
trust_path/modules/sd3rd/class/handler/Element.class.php [new file with mode: 0644]
trust_path/modules/sd3rd/class/handler/Skill.class.php
trust_path/modules/sd3rd/class/handler/SkillElement.class.php
trust_path/modules/sd3rd/forms/SkillFilterForm.class.php [new file with mode: 0644]
trust_path/modules/sd3rd/language/english/main.php
trust_path/modules/sd3rd/language/english/modinfo.php
trust_path/modules/sd3rd/language/ja_utf8/main.php
trust_path/modules/sd3rd/language/ja_utf8/modinfo.php
trust_path/modules/sd3rd/language/japanese/main.php
trust_path/modules/sd3rd/language/japanese/modinfo.php
trust_path/modules/sd3rd/templates/sd3rd_skill_list.html [new file with mode: 0644]
trust_path/modules/sd3rd/xoops_version.php

index 681ecd8..b569806 100644 (file)
@@ -1,3 +1,4 @@
+#17692 - Append skill list.
 #18685 - Change charset from SJIS to UTF8 at changes list.
 #18684 - Missing skill range value scale.
 #18681 - Remove admin mode.
index c3d66b3..b659b0e 100644 (file)
@@ -1,3 +1,4 @@
+#17692 - すきるりすとを追加
 #18685 - このふぁいるの文字こーどを SJIS から UTF8 に変更
 #18684 - すきるれんぢの小数点以下が消えていたので修正
 #18681 - 管理画面を削除
diff --git a/trust_path/modules/sd3rd/actions/SkillListAction.class.php b/trust_path/modules/sd3rd/actions/SkillListAction.class.php
new file mode 100644 (file)
index 0000000..0579424
--- /dev/null
@@ -0,0 +1,80 @@
+<?php
+/**
+ * @file
+ * @package sd3rd
+ * @version $Id$
+**/
+
+if(!defined('XOOPS_ROOT_PATH'))
+{
+    exit;
+}
+
+require_once SD3RD_TRUST_PATH . '/class/AbstractListAction.class.php';
+
+/**
+ * Sd3rd_SkillListAction
+**/
+class Sd3rd_SkillListAction extends Sd3rd_AbstractListAction
+{
+    /**
+     * &_getHandler
+     * 
+     * @param   void
+     * 
+     * @return  Sd3rd_SkillHandler
+    **/
+    protected function &_getHandler()
+    {
+        $handler =& $this->mAsset->getObject('handler', 'Skill');
+        return $handler;
+    }
+
+    /**
+     * &_getFilterForm
+     * 
+     * @param   void
+     * 
+     * @return  Sd3rd_SkillFilterForm
+    **/
+    protected function &_getFilterForm()
+    {
+        $filter =& $this->mAsset->getObject('filter', 'Skill',false);
+        $filter->prepare($this->_getPageNavi(), $this->_getHandler());
+        return $filter;
+    }
+
+    /**
+     * _getBaseUrl
+     * 
+     * @param   void
+     * 
+     * @return  string
+    **/
+    protected function _getBaseUrl()
+    {
+        return './index.php?action=SkillList';
+    }
+
+    /**
+     * executeViewIndex
+     * 
+     * @param   XCube_RenderTarget  &$render
+     * 
+     * @return  void
+    **/
+    public function executeViewIndex(/*** XCube_RenderTarget ***/ &$render)
+    {
+        $render->setTemplateName($this->mAsset->mDirname . '_skill_list.html');
+        #cubson::lazy_load_array('skill', $this->mObjects);
+        $render->setAttribute('objects', $this->mObjects);
+        $render->setAttribute('pageNavi', $this->mFilter->mNavi);
+        $render->setAttribute('linkHandler',$this->mAsset->getObject('handler','SkillElement'));
+        $render->setAttribute('elementHandler',$this->_getMasterHandler('Element'));
+        $render->setAttribute('targetHandler',$this->_getMasterHandler('Target'));
+        $render->setAttribute('kindHandler',$this->_getMasterHandler('Kind'));
+        $render->setAttribute('updateHandler',$this->mAsset->getObject('handler','Update'));
+    }
+}
+
+?>
index 95e3231..978678c 100644 (file)
@@ -16,9 +16,7 @@ if(!defined('XOOPS_ROOT_PATH'))
 abstract class Sd3rd_AbstractAction
 {
     public /*** XCube_Root ***/ $mRoot = null;
-
     public /*** Sd3rd_Module ***/ $mModule = null;
-
     public /*** Sd3rd_AssetManager ***/ $mAsset = null;
 
     /**
@@ -36,6 +34,20 @@ abstract class Sd3rd_AbstractAction
     }
 
     /**
+     * _getMasterHandler
+     * 
+     * @param   string  $name
+     * 
+     * @return  Sd3rd_AbstractMasterHandler
+    **/
+    protected function _getMasterHandler(/*** string ***/ $name)
+    {
+        $handler = $this->mAsset->getObject('handler',$name);
+        $handler->setupList();
+        return $handler;
+    }
+
+    /**
      * prepare
      * 
      * @param   void
index 8977569..79587cd 100644 (file)
@@ -93,6 +93,60 @@ abstract class Sd3rd_AbstractMasterHandler extends XoopsObjectGenericHandler
         }
         $this->_mCache[$obj->get($this->_mValueColumn)] = $obj->get($this->_mIdColumn);
     }
+    
+    /**
+     * Setup master item list.
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function setupList()
+    {
+        foreach($this->getObjects($this->_makeDefaultCriteria()) as $obj)
+        {
+            $this->_mCache[$obj->get($this->_mIdColumn)] = $obj;
+        }
+    }
+    
+    /**
+     * Create CriteriaElement instance for list.
+     * 
+     * @param   void
+     * 
+     * @return  CriteriaElement
+    **/
+    protected function _makeDefaultCriteria()
+    {
+        $cri = new CriteriaCompo();
+        $cri->addSort($this->_mValueColumn,'ASC');
+        $cri->addSort($this->_mIdColumn,'ASC');
+        return $cri;
+    }
+    
+    /**
+     * Get master item list.
+     * 
+     * @param   void
+     * 
+     * @return  XoopsSimpleObject{}
+    **/
+    public function getList()
+    {
+        return $this->_mCache;
+    }
+    
+    /**
+     * Convert from id to value.
+     * 
+     * @param   mixed   $id
+     * 
+     * @return  mixed
+    **/
+    public function convertToMaster(/*** mixed ***/ $id)
+    {
+        return isset($this->_mCache[$id]) ? $this->_mCache[$id]->getShow($this->_mValueColumn) : null;
+    }
 }
 
 ?>
diff --git a/trust_path/modules/sd3rd/class/handler/Element.class.php b/trust_path/modules/sd3rd/class/handler/Element.class.php
new file mode 100644 (file)
index 0000000..c38a307
--- /dev/null
@@ -0,0 +1,85 @@
+<?php
+/**
+ * @file
+ * @package sd3rd
+ * @version $Id$
+**/
+
+if(!defined('XOOPS_ROOT_PATH'))
+{
+    exit();
+}
+
+require_once SD3RD_TRUST_PATH . '/class/AbstractMasterHandler.class.php';
+
+/**
+ * Object of element.
+**/
+class Sd3rd_ElementObject extends XoopsSimpleObject
+{
+    /**
+     * Constructor of this class.
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function __construct()
+    {
+        $this->initVar('element_id',XOBJ_DTYPE_INT,'',false);
+        $this->initVar('element_name',XOBJ_DTYPE_STRING,'',false);
+    }
+}
+
+/**
+ * Element master handler.
+**/
+class Sd3rd_ElementHandler extends Sd3rd_AbstractMasterHandler
+{
+    public /*** string ***/ $mClass = 'Sd3rd_ElementObject';
+    public /*** string ***/ $mPrimary = 'element_id';
+    protected /*** bool ***/ $_mCanCreate = false;
+    protected /*** string ***/ $_mIdColumn = 'element_id';
+    protected /*** string ***/ $_mValueColumn = 'element_name';
+    
+    /**
+     * Create Sd3rd_ElementObject instance.
+     * 
+     * @param   int     $id
+     * @param   string  $name
+     * 
+     * @return  Sd3rd_ElementObject
+    **/
+    protected function _create(/*** int ***/ $id,/*** string ***/ $name)
+    {
+        $obj = $this->create();
+        $obj->set($this->_mIdColumn,$id);
+        $obj->set($this->_mValueColumn,$name);
+        return $obj;
+    }
+    
+    /**
+     * Create object list.
+     * 
+     * @param   CriteriaElement $cri
+     * @param   int             $limit
+     * @param   int             $offset
+     * 
+     * @return  XoopsSimpleObject[]
+    **/
+    public function getObjects(/*** CriteriaElement ***/ $cri = null,/*** int ***/ $limit = null,/*** int ***/ $offset = null)
+    {
+        $list = array(
+            $this->_create(-3,_MD_SD3RD_LANG_ELEMENT_RANDOM),
+            $this->_create(-2,_MD_SD3RD_LANG_ELEMENT_UNDEFINED),
+            $this->_create(-1,_MD_SD3RD_LANG_ELEMENT_EMPTY),
+        );
+        for($i = 0;$i <= 12;$i++)
+        {
+            $list[] = $this->_create($i,constant('_MD_SD3RD_LANG_ELEMENT_' . $i));
+        }
+        return $list;
+    }
+}
+
+?>
index 7ab87ff..8d06006 100644 (file)
@@ -35,6 +35,20 @@ class Sd3rd_SkillObject extends XoopsSimpleObject
         $this->initVar('tp', XOBJ_DTYPE_INT, '', false);
         $this->initVar('register_time', XOBJ_DTYPE_INT, '', false);
     }
+    
+    /**
+     * Get formated range value.
+     * 
+     * @param   void
+     * 
+     * @return  string
+    **/
+    public function getRange()
+    {
+        static $map = array(-10 => '-',0 => _MD_SD3RD_LANG_WEAPON);
+        $range = $this->get('range');
+        return isset($map[$range]) ? $map[$range] : sprintf('%1.1f',$range * 0.1);
+    }
 }
 
 /**
index 0c95da8..d666e8f 100644 (file)
@@ -51,6 +51,23 @@ class Sd3rd_SkillElementHandler extends XoopsObjectGenericHandler
         $this->mTable = strtr($this->mTable,array('{dirname}' => $dirname));
         parent::__construct($db);
     }
+    
+    /**
+     * Get skill element id list.
+     * 
+     * @param   int $id
+     * 
+     * @return  int[]
+    **/
+    public function getList(/*** int ***/ $id)
+    {
+        $list = array();
+        foreach($this->getObjects(new Criteria($this->mPrimary,$id)) as $obj)
+        {
+            $list[] = $obj->get('element_id');
+        }
+        return $list;
+    }
 }
 
 ?>
diff --git a/trust_path/modules/sd3rd/forms/SkillFilterForm.class.php b/trust_path/modules/sd3rd/forms/SkillFilterForm.class.php
new file mode 100644 (file)
index 0000000..47a176c
--- /dev/null
@@ -0,0 +1,107 @@
+<?php
+/**
+ * @file
+ * @package sd3rd
+ * @version $Id$
+**/
+
+if(!defined('XOOPS_ROOT_PATH'))
+{
+    exit;
+}
+
+require_once SD3RD_TRUST_PATH . '/class/AbstractFilterForm.class.php';
+
+define('SD3RD_SKILL_SORT_KEY_SKILL_NAME', 1);
+define('SD3RD_SKILL_SORT_KEY_DEFAULT', SD3RD_SKILL_SORT_KEY_SKILL_NAME);
+
+/**
+ * Sd3rd_SkillFilterForm
+**/
+class Sd3rd_SkillFilterForm extends Sd3rd_AbstractFilterForm
+{
+    public /*** string[] ***/ $mSortKeys = array(
+        SD3RD_SKILL_SORT_KEY_SKILL_NAME => 'skill_name',
+    );
+
+    /**
+     * getDefaultSortKey
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function getDefaultSortKey()
+    {
+        return SD3RD_SKILL_SORT_KEY_DEFAULT;
+    }
+
+    /**
+     * fetch
+     * 
+     * @param   void
+     * 
+     * @return  void
+    **/
+    public function fetch()
+    {
+        parent::fetch();
+        $request =& XCube_Root::getSingleton()->mContext->mRequest;
+    
+        if(($value = $request->getRequest('range')) !== null)
+        {
+            if(preg_match('/^-?\d+$/',$value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('range',$value));
+            }
+            else
+            {
+                $value = null;
+            }
+        }
+        $this->mNavi->addExtra('range',$value);
+    
+        if(($value = $request->getRequest('target')) !== null)
+        {
+            if(ctype_digit($value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('target_id',$value));
+            }
+            else
+            {
+                $value = null;
+            }
+        }
+        $this->mNavi->addExtra('target',$value);
+    
+        if(($value = $request->getRequest('kind')) !== null)
+        {
+            if(ctype_digit($value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('kind_id',$value));
+            }
+            else
+            {
+                $value = null;
+            }
+        }
+        $this->mNavi->addExtra('kind',$value);
+    
+        if(($value = $request->getRequest('register_time')) !== null)
+        {
+            if(ctype_digit($value))
+            {
+                $value = intval($value);
+                $this->_mCriteria->add(new Criteria('register_time',$value));
+            }
+        }
+        $this->mNavi->addExtra('register_time', $value);
+    
+        $this->_mCriteria->addSort($this->getSort(), $this->getOrder());
+    }
+}
+
+?>
index e2afa6d..59e67fc 100644 (file)
@@ -47,5 +47,30 @@ define('_MD_SD3RD_LANG_MODIFY_CON', "MODIFY_CON");
 define('_MD_SD3RD_LANG_MODIFY_ACT', "MODIFY_ACT");
 define('_MD_SD3RD_LANG_MODIFY_AVOID', "MODIFY_AVOID");
 define('_MD_SD3RD_LANG_MOVE_COST', "MOVE_COST");
+define('_MD_SD3RD_LANG_ADD_A_NEW_SKILL', "ADD_A_NEW_SKILL");
+define('_MD_SD3RD_LANG_SKILL_ID', "SKILL_ID");
+define('_MD_SD3RD_LANG_SKILL_NAME', "SKILL_NAME");
+define('_MD_SD3RD_LANG_RANGE', "RANGE");
+define('_MD_SD3RD_LANG_TARGET_ID', "TARGET_ID");
+define('_MD_SD3RD_LANG_KIND_ID', "KIND_ID");
+define('_MD_SD3RD_LANG_TP', "TP");
+define('_MD_SD3RD_LANG_WEAPON', "WEAPON");
+define('_MD_SD3RD_LANG_ELEMENT_0', "ELEMENT_0");
+define('_MD_SD3RD_LANG_ELEMENT_1', "ELEMENT_1");
+define('_MD_SD3RD_LANG_ELEMENT_2', "ELEMENT_2");
+define('_MD_SD3RD_LANG_ELEMENT_3', "ELEMENT_3");
+define('_MD_SD3RD_LANG_ELEMENT_4', "ELEMENT_4");
+define('_MD_SD3RD_LANG_ELEMENT_5', "ELEMENT_5");
+define('_MD_SD3RD_LANG_ELEMENT_6', "ELEMENT_6");
+define('_MD_SD3RD_LANG_ELEMENT_7', "ELEMENT_7");
+define('_MD_SD3RD_LANG_ELEMENT_8', "ELEMENT_8");
+define('_MD_SD3RD_LANG_ELEMENT_9', "ELEMENT_9");
+define('_MD_SD3RD_LANG_ELEMENT_10', "ELEMENT_10");
+define('_MD_SD3RD_LANG_ELEMENT_11', "ELEMENT_11");
+define('_MD_SD3RD_LANG_ELEMENT_12', "ELEMENT_12");
+define('_MD_SD3RD_LANG_ELEMENT_EMPTY', "ELEMENT_EMPTY");
+define('_MD_SD3RD_LANG_ELEMENT_RANDOM', "ELEMENT_RANDOM");
+define('_MD_SD3RD_LANG_ELEMENT_UNDEFINED', "ELEMENT_UNDEFINED");
+define('_MD_SD3RD_LANG_ELEMENT', "ELEMENT");
 
 ?>
index 984bddb..d5f6592 100644 (file)
@@ -54,5 +54,6 @@ define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
 define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 define('_MI_SD3RD_TPL_COSTUME_LIST', "COSTUME_LIST");
+define('_MI_SD3RD_TPL_SKILL_LIST', "SKILL_LIST");
 
 ?>
index 389f7c0..0a7fd77 100644 (file)
@@ -47,5 +47,30 @@ define('_MD_SD3RD_LANG_MODIFY_CON', "集中");
 define('_MD_SD3RD_LANG_MODIFY_ACT', "行動");
 define('_MD_SD3RD_LANG_MODIFY_AVOID', "回避");
 define('_MD_SD3RD_LANG_MOVE_COST', "移動");
+define('_MD_SD3RD_LANG_ADD_A_NEW_SKILL', "ADD_A_NEW_SKILL");
+define('_MD_SD3RD_LANG_SKILL_ID', "SKILL_ID");
+define('_MD_SD3RD_LANG_SKILL_NAME', "すきる名");
+define('_MD_SD3RD_LANG_RANGE', "射程");
+define('_MD_SD3RD_LANG_TARGET_ID', "対象");
+define('_MD_SD3RD_LANG_KIND_ID', "攻種");
+define('_MD_SD3RD_LANG_TP', "TP");
+define('_MD_SD3RD_LANG_WEAPON', "武器");
+define('_MD_SD3RD_LANG_ELEMENT_0', "水");
+define('_MD_SD3RD_LANG_ELEMENT_1', "炎");
+define('_MD_SD3RD_LANG_ELEMENT_2', "木");
+define('_MD_SD3RD_LANG_ELEMENT_3', "風");
+define('_MD_SD3RD_LANG_ELEMENT_4', "鉄");
+define('_MD_SD3RD_LANG_ELEMENT_5', "命");
+define('_MD_SD3RD_LANG_ELEMENT_6', "地");
+define('_MD_SD3RD_LANG_ELEMENT_7', "雷");
+define('_MD_SD3RD_LANG_ELEMENT_8', "光");
+define('_MD_SD3RD_LANG_ELEMENT_9', "星");
+define('_MD_SD3RD_LANG_ELEMENT_10', "闇");
+define('_MD_SD3RD_LANG_ELEMENT_11', "花");
+define('_MD_SD3RD_LANG_ELEMENT_12', "無");
+define('_MD_SD3RD_LANG_ELEMENT_EMPTY', "武器");
+define('_MD_SD3RD_LANG_ELEMENT_RANDOM', "?");
+define('_MD_SD3RD_LANG_ELEMENT_UNDEFINED', "-");
+define('_MD_SD3RD_LANG_ELEMENT', "属性");
 
 ?>
index 9d41f82..6bc4fbd 100644 (file)
@@ -54,5 +54,6 @@ define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
 define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 define('_MI_SD3RD_TPL_COSTUME_LIST', "COSTUME_LIST");
+define('_MI_SD3RD_TPL_SKILL_LIST', "SKILL_LIST");
 
 ?>
index 612c312..06c1fdd 100644 (file)
@@ -47,5 +47,30 @@ define('_MD_SD3RD_LANG_MODIFY_CON', "
 define('_MD_SD3RD_LANG_MODIFY_ACT', "¹ÔÆ°");
 define('_MD_SD3RD_LANG_MODIFY_AVOID', "²óÈò");
 define('_MD_SD3RD_LANG_MOVE_COST', "°ÜÆ°");
+define('_MD_SD3RD_LANG_ADD_A_NEW_SKILL', "ADD_A_NEW_SKILL");
+define('_MD_SD3RD_LANG_SKILL_ID', "SKILL_ID");
+define('_MD_SD3RD_LANG_SKILL_NAME', "¤¹¤­¤ë̾");
+define('_MD_SD3RD_LANG_RANGE', "¼ÍÄø");
+define('_MD_SD3RD_LANG_TARGET_ID', "ÂоÝ");
+define('_MD_SD3RD_LANG_KIND_ID', "¹¶¼ï");
+define('_MD_SD3RD_LANG_TP', "TP");
+define('_MD_SD3RD_LANG_WEAPON', "Éð´ï");
+define('_MD_SD3RD_LANG_ELEMENT_0', "¿å");
+define('_MD_SD3RD_LANG_ELEMENT_1', "±ê");
+define('_MD_SD3RD_LANG_ELEMENT_2', "ÌÚ");
+define('_MD_SD3RD_LANG_ELEMENT_3', "É÷");
+define('_MD_SD3RD_LANG_ELEMENT_4', "Ŵ");
+define('_MD_SD3RD_LANG_ELEMENT_5', "̿");
+define('_MD_SD3RD_LANG_ELEMENT_6', "ÃÏ");
+define('_MD_SD3RD_LANG_ELEMENT_7', "Íë");
+define('_MD_SD3RD_LANG_ELEMENT_8', "¸÷");
+define('_MD_SD3RD_LANG_ELEMENT_9', "À±");
+define('_MD_SD3RD_LANG_ELEMENT_10', "°Ç");
+define('_MD_SD3RD_LANG_ELEMENT_11', "²Ö");
+define('_MD_SD3RD_LANG_ELEMENT_12', "̵");
+define('_MD_SD3RD_LANG_ELEMENT_EMPTY', "Éð´ï");
+define('_MD_SD3RD_LANG_ELEMENT_RANDOM', "¡©");
+define('_MD_SD3RD_LANG_ELEMENT_UNDEFINED', "¡Ý");
+define('_MD_SD3RD_LANG_ELEMENT', "°À­");
 
 ?>
index 00088eb..24a4f9a 100644 (file)
@@ -54,5 +54,6 @@ define('_MI_SD3RD_LANG_AUTHOR', "AUTHOR");
 define('_MI_SD3RD_LANG_CREDITS', "CREDITS");
 define('_MI_SD3RD_TPL_ABILITY_LIST', "ABILITY_LIST");
 define('_MI_SD3RD_TPL_COSTUME_LIST', "COSTUME_LIST");
+define('_MI_SD3RD_TPL_SKILL_LIST', "SKILL_LIST");
 
 ?>
diff --git a/trust_path/modules/sd3rd/templates/sd3rd_skill_list.html b/trust_path/modules/sd3rd/templates/sd3rd_skill_list.html
new file mode 100644 (file)
index 0000000..8e1de9b
--- /dev/null
@@ -0,0 +1,71 @@
+<form action="./index.php" method="get">
+  <fieldset>
+    <input type="hidden" name="action" value="SkillList" />
+    <label for="sd3rd_skill_register_time">Date</label> : 
+    <select id="sd3rd_skill_register_time" name="register_time">
+      <option value=""<{if $pageNavi->mExtra.register_time === null}> selected="selected"<{/if}>>--</option>
+      <{foreach from=$updateHandler->getList() item=u}>
+        <option value="<{$u->getShow('update_time')}>"<{if $pageNavi->mExtra.register_time === $u->get('update_time')}> selected="selected"<{/if}>><{$u->format()}></option>
+      <{/foreach}>
+    </select>
+    <label id="sd3rd_skill_range">Range</label> : 
+    <select id="sd3rd_skill_range" name="range">
+      <option value=""<{if $pageNavi->mExtra.range === null}> selected="selected"<{/if}>>--</option>
+      <option value="-10"<{if $pageNavi->mExtra.range === -10}> selected="selected"<{/if}>>-</option>
+      <option value="0"<{if $pageNavi->mExtra.range === 0}> selected="selected"<{/if}>><{$smarty.const._MD_SD3RD_LANG_WEAPON}></option>
+      <{foreach from=10|range:40:5 item=r}>
+        <option value="<{$r|xoops_escape}>"<{if $r === $pageNavi->mExtra.range}> selected="selected"<{/if}>><{'%1.1f'|sprintf:$r*0.1}></option>
+      <{/foreach}>
+    </select>
+    <label id="sd3rd_skill_target">Target</label> : 
+    <select id="sd3rd_skill_target" name="target">
+      <option value=""<{if $pageNavi->mExtra.target === null}> selected="selected"<{/if}>>--</option>
+      <{foreach from=$targetHandler->getList() item=t}>
+        <option value="<{$t->getShow('target_id')}>"<{if $t->get('target_id') === $pageNavi->mExtra.target}> selected="selected"<{/if}>><{$t->getShow('target_name')}></option>
+      <{/foreach}>
+    </select>
+    <label id="sd3rd_skill_kind">Kind</label> : 
+    <select id="sd3rd_skill_kind" name="kind">
+      <option value=""<{if $pageNavi->mExtra.kind === null}> selected="selected"<{/if}>>--</option>
+      <{foreach from=$kindHandler->getList() item=k}>
+        <option value="<{$k->getShow('kind_id')}>"<{if $k->get('kind_id') === $pageNavi->mExtra.kind}> selected="selected"<{/if}>><{$k->getShow('kind_name')}></option>
+      <{/foreach}>
+    </select>
+    <input type="submit" />
+  </fieldset>
+</form>
+
+<{if count($objects) > 0}>
+  <div class="pagenavi"><{xoops_pagenavi pagenavi=$pageNavi}></div>
+  <table class="outer" summary="">
+    <thead>
+      <tr>
+        <th><{$smarty.const._MD_SD3RD_LANG_SKILL_NAME}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_DESCRIPTION}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_ELEMENT}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_RANGE}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_TARGET_ID}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_KIND_ID}></th>
+        <th><{$smarty.const._MD_SD3RD_LANG_TP}></th>
+      </tr>
+    </thead>
+    <tbody>
+      <{foreach item=obj from=$objects}>
+        <tr class="<{cycle values='odd,even'}>">
+          <td><{$obj->getShow('skill_name')}></td>
+          <td><{$obj->getShow('description')}></td>
+          <td>
+            <{foreach from=$linkHandler->getList($obj->get('skill_id')) item=e}>
+              <{$elementHandler->convertToMaster($e)}>
+            <{/foreach}>
+          </td>
+          <td><{$obj->getRange()}></td>
+          <td><{$targetHandler->convertToMaster($obj->get('target_id'))}></td>
+          <td><{$kindHandler->convertToMaster($obj->get('kind_id'))}></td>
+          <td><{$obj->getShow('tp')}></td>
+        </tr>
+      <{/foreach}>
+    </tbody>
+  </table>
+  <div class="pagenavi"><{xoops_pagenavi pagenavi=$pageNavi}></div>
+<{/if}>
index febf750..1b4be52 100644 (file)
@@ -71,6 +71,7 @@ $modversion['templates'] = array(
 ##[cubson:templates]
     array('file' => '{dirname}_ability_list.html','description' => _MI_SD3RD_TPL_ABILITY_LIST),
     array('file' => '{dirname}_costume_list.html','description' => _MI_SD3RD_TPL_COSTUME_LIST),
+    array('file' => '{dirname}_skill_list.html','description' => _MI_SD3RD_TPL_SKILL_LIST),
 ##[/cubson:templates]
 );