示例#1
0
 public int ArrayLength(CharacterIntData type)
 {
     switch (type)
     {
         case CharacterIntData.BASE:
             {
                 int size = arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.BASE)];
                 int maxSize = arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.MAXBASE)];
                 return size > maxSize ? size : maxSize;
             }
         case CharacterIntData.MARK:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.MARK)];
         case CharacterIntData.ABL:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.ABL)];
         case CharacterIntData.EXP:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.EXP)];
         case CharacterIntData.RELATION:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.RELATION)];
         case CharacterIntData.TALENT:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.TALENT)];
         case CharacterIntData.CFLAG:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.CFLAG)];
         case CharacterIntData.EQUIP:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.EQUIP)];
         case CharacterIntData.JUEL:
             return arraySize[(int)(VariableCode.__LOWERCASE__ & VariableCode.JUEL)];
         default:
             throw new CodeEE("存在しないキーを参照しました");
     }
 }
示例#2
0
 public CsvDataMethod(CharacterIntData cInt)
 {
     ReturnType = typeof(Int64);
     argumentTypeArray = null;
     charaInt = cInt;
     CanRestructure = true;
 }
 public Int64 GetCharacterIntfromCSVData(Int64 charaTmplNo, CharacterIntData type, bool isSp, Int64 arg2Long)
 {
     CharacterTemplate tmpl = constant.GetCharacterTemplate(charaTmplNo, isSp);
     if (tmpl == null)
         throw new CodeEE("定義していないキャラクタを参照しようとしました");
     if (arg2Long >= tmpl.ArrayLength(type) || arg2Long < 0)
         throw new CodeEE("参照可能範囲外を参照しました");
     int arg2 = (int)arg2Long;
     Dictionary<int, Int64> intDic = null;
     switch (type)
     {
         case CharacterIntData.BASE:
             intDic = tmpl.Maxbase; break;
         case CharacterIntData.MARK:
             intDic = tmpl.Mark; break;
         case CharacterIntData.ABL:
             intDic = tmpl.Abl; break;
         case CharacterIntData.EXP:
             intDic = tmpl.Exp; break;
         case CharacterIntData.RELATION:
             intDic = tmpl.Relation; break;
         case CharacterIntData.TALENT:
             intDic = tmpl.Talent; break;
         case CharacterIntData.CFLAG:
             intDic = tmpl.CFlag; break;
         case CharacterIntData.EQUIP:
             intDic = tmpl.Equip; break;
         case CharacterIntData.JUEL:
             intDic = tmpl.Juel; break;
         default:
             throw new CodeEE("存在しないデータを参照しようとしました");
     }
     Int64 ret;
     if (intDic.TryGetValue(arg2, out ret))
         return ret;
     return 0L;
 }