Пример #1
0
 public override L2DatDefinition ParseMain(BinaryReader f, int RecNo)
 {
     L2DatDefinition ret = new L2DatDefinition();
     if (Program.main_form.selectedDatVersion >= DatVersion.ChaoticThrone2_4_Epilogue)
     {
         NpcgrpInfo_CT2_4 info = new NpcgrpInfo_CT2_4();
         info.InitFieldValues();
         info = (NpcgrpInfo_CT2_4)base.ReadFieldValue(f, info, "tag", "UNK_1");
         if (Program.main_form.selectedDatVersion >= DatVersion.ChaoticThrone2_5_Freya)
             info = (NpcgrpInfo_CT2_4)base.ReadFieldValue(f, info, "UNK_2");
         info = (NpcgrpInfo_CT2_4)base.ReadFieldValue(f, info, "effect", "npcend");
         if (Program.main_form.selectedDatVersion >= DatVersion.ChaoticThrone2_6_HighFive)
             info = (NpcgrpInfo_CT2_4)base.ReadFieldValue(f, info, "UNK_4");
         ret = info;
     }
     else
     {
         NpcgrpInfo info = new NpcgrpInfo();
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "tag", "npc_speed");
         if (Program.main_form.selectedDatVersion >= DatVersion.Chronicle5)
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_0_NEW");
         else
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_0_OLD");
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "snd1", "snd3");
         if (Program.main_form.selectedDatVersion >= DatVersion.Interlude)
         {
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "rb_effect_on");
             if (info.rb_effect_on == 1)
                 info = (NpcgrpInfo)base.ReadFieldValue(f, info, "rb_effect", "rb_effect_fl");
         }
         if (Program.main_form.selectedDatVersion >= DatVersion.Chronicle5)
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_1_NEW");
         else
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_1_OLD", "level_lim_up");
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "effect", "class_lim");
         ret = info;
     }
     return ret;
 }
Пример #2
0
 public override L2DatDefinition ParseMain(BinaryReader f, int RecNo)
 {
     NpcgrpInfo info = new NpcgrpInfo();
     info = (NpcgrpInfo)base.ReadFieldValue(f, info, "tag", "npc_speed");
     if (Program.main_form.selectedDatVersion >= DatVersion.Chronicle5)
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_0_NEW");
     else
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_0_OLD");
     info = (NpcgrpInfo)base.ReadFieldValue(f, info, "snd1", "snd3");
     if (Program.main_form.selectedDatVersion >= DatVersion.Interlude)
     {
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "rb_effect_on");
         if (info.rb_effect_on == 1)
             info = (NpcgrpInfo)base.ReadFieldValue(f, info, "rb_effect", "rb_effect_fl");
     }
     if (Program.main_form.selectedDatVersion >= DatVersion.Chronicle5)
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_1_NEW");
     else
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "UNK_1_OLD", "level_lim_up");
     info = (NpcgrpInfo)base.ReadFieldValue(f, info, "effect", "class_lim");
     if (Program.main_form.selectedDatVersion >= DatVersion.GraciaEpilogue)
         info = (NpcgrpInfo)base.ReadFieldValue(f, info, "npcend");
     return info;
 }