public static ff9.s_effectData ReadEffectData(this BinaryReader reader)
 {
     ff9.s_effectData s_effectData = new ff9.s_effectData();
     s_effectData.x    = reader.ReadInt32();
     s_effectData.y    = reader.ReadInt32();
     s_effectData.z    = reader.ReadInt32();
     s_effectData.rx   = reader.ReadInt32();
     s_effectData.ry   = reader.ReadInt32();
     s_effectData.rz   = reader.ReadInt32();
     s_effectData.vx   = reader.ReadInt16();
     s_effectData.vy   = reader.ReadInt16();
     s_effectData.vz   = reader.ReadInt16();
     s_effectData.ax   = reader.ReadInt16();
     s_effectData.ay   = reader.ReadInt16();
     s_effectData.az   = reader.ReadInt16();
     s_effectData.no   = reader.ReadInt16();
     s_effectData.size = reader.ReadInt16();
     s_effectData.rnd  = reader.ReadInt16();
     s_effectData.temp = reader.ReadInt16();
     for (Int32 i = 0; i < 5; i++)
     {
         s_effectData.pad[i] = reader.ReadInt32();
     }
     return(s_effectData);
 }
Exemple #2
0
 public void w_effectUpdateSP(Byte no)
 {
     no = (Byte)(no - 1);
     if ((Int32)no >= (Int32)ff9.w_effectDataList.Length)
     {
         global::Debug.LogWarning("no " + no + " doesn't exist");
         return;
     }
     for (Int32 i = 0; i < ff9.w_effectDataList[(Int32)no].effectData.Count; i++)
     {
         ff9.s_effectData s_effectData = ff9.w_effectDataList[(Int32)no].effectData[i];
         if (UnityEngine.Random.Range(0, 4096) < (Int32)s_effectData.rnd)
         {
             Int32 num  = s_effectData.x - s_effectData.rx / 2;
             Int32 num2 = s_effectData.y - s_effectData.ry / 2;
             Int32 num3 = s_effectData.z - s_effectData.rz / 2;
             if (s_effectData.rx != 0)
             {
                 num += ff9.random16() % s_effectData.rx;
             }
             if (s_effectData.ry != 0)
             {
                 num2 += ff9.random16() % s_effectData.ry;
             }
             if (s_effectData.rz != 0)
             {
                 num3 += ff9.random16() % s_effectData.rz;
             }
             ff9.w_effectRegist_FixedPoint(num, num2, num3, (Int32)s_effectData.no, (Int32)s_effectData.size);
         }
     }
 }
 public static ff9.s_effectDataList ReadEffectDataList(this BinaryReader reader)
 {
     ff9.s_effectDataList s_effectDataList = new ff9.s_effectDataList();
     ff9.s_effectData     s_effectData     = reader.ReadEffectData();
     while (s_effectData.no != -1)
     {
         s_effectDataList.effectData.Add(s_effectData);
         s_effectData = reader.ReadEffectData();
     }
     return(s_effectDataList);
 }