PlatinumMaster

NPRE B2W2 Command Reference

May 3rd, 2020
241
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 428.73 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6. using NPRE.Commons;
  7. using PG4Map.Formats;
  8. using System.Windows.Forms;
  9.  
  10. namespace NPRE.Formats.Specific.Pokémon.Scripts
  11. {
  12.     public class BW2CommandHandler
  13.     {
  14.         private int scriptType;
  15.         public List<uint> movOffsetList = new List<uint>();
  16.         public List<uint> functionOffsetList = new List<uint>();
  17.  
  18.         public List<String> mulString = new List<String>();
  19.         public List<string> conditionList = new List<string>();
  20.         public List<string> operatorList = new List<string>();
  21.         public List<string> blockList = new List<string>();
  22.         public List<Dictionary<int, string>> varNameDictionary;
  23.         private string temp2;
  24.         private string conditionType = "N";
  25.         private string cond;
  26.         private bool mulActive;
  27.  
  28.         public Texts multiFile;
  29.         public Texts textFile;
  30.         public PG4Map.Narc textNarc;
  31.         public PG4Map.Narc bwTextNarc;
  32.         public RichTextBox scriptAnalyzer;
  33.         public RichTextBox scriptBoxEditor;
  34.         private int varLevel;
  35.         private RichTextBox scriptBoxViewer;
  36.         private int newVar;
  37.         private int newVar2;
  38.         private string temp;
  39.  
  40.         public Scripts.Commands_s readCommandBW2(BinaryReader reader, Scripts.Commands_s com, List<uint> movOffsetList, List<uint> functionOffsetList, List<uint> scriptStartList, List<uint> scriptOffList, List<uint> scriptOrder)
  41.         {
  42.             uint functionOffset = 0;
  43.             reader.BaseStream.Position += 1;
  44.             var actualPos = reader.BaseStream.Position;
  45.             if (scriptStartList.Contains((uint)actualPos) || (functionOffsetList!=null &&  functionOffsetList.Contains((uint)actualPos)))
  46.             {
  47.                 com.Name = "WrongEnd";
  48.                 com.isEnd = 1;
  49.                 reader.BaseStream.Position -= 1;
  50.                 return com;
  51.             }
  52.             reader.BaseStream.Position -= 1;
  53.             if (reader.BaseStream.Position < reader.BaseStream.Length)
  54.             {
  55.                 actualPos = reader.BaseStream.Position;
  56.                 if (actualPos + 1 == reader.BaseStream.Length || (movOffsetList!=null && movOffsetList.Contains((uint)actualPos)) || scriptStartList.Contains((uint)actualPos) || (functionOffsetList!= null && functionOffsetList.Contains((uint)actualPos)))
  57.                 {
  58.                     com.isEnd = 1;
  59.                 }
  60.             }
  61.             switch (com.Id)
  62.             {
  63.                 case 0x0:
  64.                     com.Name = "Nop";
  65.                     com.isEnd = 1;
  66.                     break;
  67.                 case 0x1:
  68.                     com.Name = "Nop2";
  69.                     com.isEnd = 1;
  70.                     break;
  71.                 case 0x2:
  72.                     com.Name = "EndScript";
  73.                     if (reader.BaseStream.Position < reader.BaseStream.Length)
  74.                     {
  75.                         var next = reader.ReadByte();
  76.                         if (next == 0)
  77.                             com.isEnd = 1;
  78.                         else
  79.                             reader.BaseStream.Position -= 1;
  80.                     }
  81.                     break;
  82.                 case 0x03:
  83.                     com.Name = "PauseScriptFor";
  84.                     com.parameters.Add(reader.ReadUInt16()); //Delay
  85.                     break;
  86.                 case 0x04:
  87.                     com.Name = "CallRoutine(04)";
  88.                     if (reader.BaseStream.Position < reader.BaseStream.Length - 4)
  89.                     {
  90.                         com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  91.                         functionOffset = com.parameters[0];
  92.                         if (!scriptStartList.Contains(functionOffset) && !functionOffsetList.Contains(functionOffset) && !movOffsetList.Contains(functionOffset))
  93.                         {
  94.                             functionOffsetList.Add(functionOffset);
  95.                         }
  96.                     }
  97.                     break;
  98.                 case 0x05:
  99.                     com.Name = "EndRoutine(05)";
  100.                     if (reader.BaseStream.Position + 1 > reader.BaseStream.Length) { com.isEnd = 1; break; }
  101.                     var next5 = reader.ReadByte();
  102.                     if (next5 == 0 || movOffsetList.Contains((uint)reader.BaseStream.Position - 1) || scriptOffList.Contains((uint)reader.BaseStream.Position - 1))
  103.                     {
  104.                         com.isEnd = 1;
  105.                         reader.BaseStream.Position -= 1;
  106.                         break;
  107.                     }
  108.                     else
  109.                         reader.BaseStream.Position -= 1;
  110.                     break;
  111.                 case 0x06:
  112.                     com.Name = "GetDerefVar(06)";
  113.                     com.parameters.Add(reader.ReadUInt16());
  114.                     break;
  115.                 case 0x07:
  116.                     com.Name = "GetDerefVar(07)";
  117.                     com.parameters.Add(reader.ReadUInt16());
  118.                     break;
  119.                 case 0x08:
  120.                     com.Name = "SetStackVar(08)";
  121.                     com.parameters.Add(reader.ReadUInt16()); //Value to push
  122.                     break;
  123.                 case 0x09:
  124.                     com.Name = "SetStackDerefVar(09)";
  125.                     com.parameters.Add(reader.ReadUInt16()); //Containter to push
  126.                     break;
  127.                 case 0x0A:
  128.                     com.Name = "GetStackVar(0A)";
  129.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  130.                     break;
  131.                 case 0x0B:
  132.                     com.Name = "PopStack(0B)";
  133.                     break;
  134.                 case 0x0C:
  135.                     com.Name = "AddStackVar(0C)";
  136.                     break;
  137.                 case 0x0D:
  138.                     com.Name = "SubStackVar(0D)";
  139.                     break;
  140.                 case 0x0E:
  141.                     com.Name = "MulStackVar(0E)";
  142.                     break;
  143.                 case 0x0F:
  144.                     com.Name = "DivStackVar(0F)";
  145.                     break;
  146.                 case 0x10:
  147.                     com.Name = "SetStackFlag(10)";
  148.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  149.                     break;
  150.                 case 0x11:
  151.                     com.Name = "CompareStackCondition(11)";
  152.                     com.parameters.Add(reader.ReadUInt16()); //Condition
  153.                     break;
  154.                 case 0x12:
  155.                     com.Name = "AndDerefVar(12)";
  156.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container/First Deref Var
  157.                     com.parameters.Add(reader.ReadUInt16()); //Second Deref Var
  158.                     break;
  159.                 case 0x13:
  160.                     com.Name = "OrDerefVar(13)";
  161.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container/First Deref Var
  162.                     com.parameters.Add(reader.ReadUInt16()); //Second Deref Var
  163.                     break;
  164.                 case 0x14:
  165.                     com.Name = "StoreByteToGlobalVar(14)";
  166.                     com.parameters.Add(reader.ReadByte()); //Global Var Id
  167.                     com.parameters.Add(reader.ReadByte()); //Value
  168.                     break;
  169.                 case 0x15:
  170.                     com.Name = "StoreLongToGlobalVar(15)";
  171.                     com.parameters.Add(reader.ReadByte()); //Global Var Id
  172.                     com.parameters.Add(reader.ReadUInt32()); //Value
  173.                     break;
  174.                 case 0x16:
  175.                     com.Name = "MoveGlobalVars(16)";
  176.                     com.parameters.Add(reader.ReadByte()); //Destination Id
  177.                     com.parameters.Add(reader.ReadByte()); //Source Id
  178.                     break;
  179.                 case 0x17:
  180.                     com.Name = "CompareGlobalVars(17)";
  181.                     com.parameters.Add(reader.ReadByte()); //First Global Var Id
  182.                     com.parameters.Add(reader.ReadByte()); //Second Global Var Id
  183.                     break;
  184.                 case 0x18:
  185.                     com.Name = "CompareValueWithGlobalVar(17)";
  186.                     com.parameters.Add(reader.ReadByte()); //Global Var Id
  187.                     com.parameters.Add(reader.ReadByte()); //Value
  188.                     break;
  189.                 case 0x19:
  190.                     com.Name = "CompareValueWithDerefVar(19)";
  191.                     com.parameters.Add(reader.ReadUInt16()); //Deref Var
  192.                     com.parameters.Add(reader.ReadUInt16()); //Value
  193.                     break;
  194.                 case 0x1A:
  195.                     com.Name = "CompareDerefVars(1A)";
  196.                     com.parameters.Add(reader.ReadUInt16()); //First Deref Var
  197.                     com.parameters.Add(reader.ReadUInt16()); //Second Deref Var
  198.                     break;
  199.                 case 0x1B:
  200.                     com.Name = "AddScriptVM(1B)";
  201.                     com.parameters.Add(reader.ReadUInt16()); //Param
  202.                     break;
  203.                 case 0x1C:
  204.                     com.Name = "CallSubScriptVM(1C)";
  205.                     com.parameters.Add(reader.ReadUInt16());//Standard Table Offset
  206.                     break;
  207.                 case 0x1D:
  208.                     com.Name = "EndSubScriptVM(1D)";
  209.                     break;
  210.                 case 0x1E:
  211.                     com.Name = "Jump";
  212.                     com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  213.                     functionOffset = com.parameters[0];
  214.                     if (!scriptStartList.Contains(functionOffset) && (functionOffsetList != null && !functionOffsetList.Contains(functionOffset)) && (movOffsetList != null && !movOffsetList.Contains(functionOffset)))
  215.                     {
  216.                         functionOffsetList.Add(functionOffset);
  217.                     }
  218.                     com.numJump++;
  219.                     com.isEnd = 1;
  220.                     break;
  221.                 case 0x1F:
  222.                     com.Name = "When(1F)";
  223.                     com.parameters.Add(reader.ReadByte());
  224.                     com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  225.                     functionOffset = com.parameters[1];
  226.                     if (!scriptStartList.Contains(functionOffset) && (functionOffsetList!= null && !functionOffsetList.Contains(functionOffset)) && (movOffsetList!=null && !movOffsetList.Contains(functionOffset)))
  227.                     {
  228.                         functionOffsetList.Add(functionOffset);
  229.                     }
  230.                     com.numJump++;
  231.                     break;
  232.                 case 0x20:
  233.                     com.Name = "If(20)";
  234.                     com.parameters.Add(reader.ReadByte());
  235.                     com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  236.                     functionOffset = com.parameters[1];
  237.                     if (!scriptStartList.Contains(functionOffset) && !functionOffsetList.Contains(functionOffset) && !movOffsetList.Contains(functionOffset))
  238.                     {
  239.                         functionOffsetList.Add(functionOffset);
  240.                     }
  241.                     com.numJump++;
  242.                     break;
  243.                 case 0x21:
  244.                     com.Name = "SetMapEventStatusFlag(21)";
  245.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  246.                     break;
  247.                 case 0x22:
  248.                     com.Name = "CheckMapTypeChange(22)";
  249.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  250.                     break;
  251.                 case 0x23:
  252.                     com.Name = "SetFlag(23)";
  253.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  254.                     break;
  255.                 case 0x24:
  256.                     com.Name = "ClearFlag(24)";
  257.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  258.                     break;
  259.                 case 0x25:
  260.                     com.Name = "StoreVarFlag(25)";
  261.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  262.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  263.                     break;
  264.                 case 0x26:
  265.                     com.Name = "AddVars(26)";
  266.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  267.                     com.parameters.Add(reader.ReadUInt16()); //Second Var
  268.                     break;
  269.                 case 0x27:
  270.                     com.Name = "SubVars(27)";
  271.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  272.                     com.parameters.Add(reader.ReadUInt16()); //Second Var
  273.                     break;
  274.                 case 0x28:
  275.                     com.Name = "StoreValueInVar(28)";
  276.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  277.                     com.parameters.Add(reader.ReadUInt16()); //Value
  278.                     break;
  279.                 case 0x29:
  280.                     com.Name = "StoreVarInVar(29)";
  281.                     com.parameters.Add(reader.ReadUInt16()); //RV = Container
  282.                     com.parameters.Add(reader.ReadUInt16()); //Var
  283.                     break;
  284.                 case 0x2A:
  285.                     com.Name = "StoreDerefVarInVar(2A)";
  286.                     com.parameters.Add(reader.ReadUInt16()); //Var as container
  287.                     com.parameters.Add(reader.ReadUInt16()); //Deref Var
  288.                     break;
  289.                 case 0x2B:
  290.                     com.Name = "MulVars(2B)";
  291.                     com.parameters.Add(reader.ReadUInt16()); //Var as container
  292.                     com.parameters.Add(reader.ReadUInt16()); //Deref Var
  293.                     break;
  294.                 case 0x2C:
  295.                     com.Name = "DivVars(2C)";
  296.                     com.parameters.Add(reader.ReadUInt16()); //Var as container
  297.                     com.parameters.Add(reader.ReadUInt16()); //Deref Var
  298.                     break;
  299.                 case 0x2D:
  300.                     com.Name = "ModDivVars(2D)";
  301.                     com.parameters.Add(reader.ReadUInt16()); //Var as container
  302.                     com.parameters.Add(reader.ReadUInt16()); //Deref Var
  303.                     break;
  304.                 case 0x2E:
  305.                     com.Name = "LockAll(2E)";
  306.                     break;
  307.                 case 0x2F:
  308.                     com.Name = "ReleaseAll(2F)";
  309.                     break;
  310.                 case 0x30:
  311.                     com.Name = "ExecSpecialEvent(30)";
  312.                     break;
  313.                 case 0x31:
  314.                     com.Name = "WaitABPress(31)";
  315.                     break;
  316.                 case 0x32:
  317.                     com.Name = "WaitKeyPress(32)";
  318.                     break;
  319.                 case 0x33:
  320.                     com.Name = "MusicalMessage(33)";
  321.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  322.                     break;
  323.                 case 0x34:
  324.                     com.Name = "EventGreyMessage(34)";
  325.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  326.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  327.                     break;
  328.                 case 0x35:
  329.                     com.Name = "MusicalMessage(35)";
  330.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  331.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  332.                     break;
  333.                 case 0x36:
  334.                     com.Name = "CloseEventGreyMessage(36)";
  335.                     break;
  336.                 case 0x37:
  337.                     com.Name = "37";
  338.                     com.parameters.Add(reader.ReadUInt16());
  339.                     break;
  340.                 case 0x38:
  341.                     com.Name = "BubbleMessage(38)";
  342.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  343.                     com.parameters.Add(reader.ReadByte()); //Bottom/Top View.
  344.                     break;
  345.                 case 0x39:
  346.                     com.Name = "CloseBubbleMessage(39)";
  347.                     break;
  348.                 case 0x3A:
  349.                     com.Name = "ShowMessageAt(3A)";
  350.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  351.                     com.parameters.Add(reader.ReadUInt16()); //X coordinate
  352.                     com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  353.                     com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  354.                     break;
  355.                 case 0x3B:
  356.                     com.Name = "CloseShowMessageAt(3B)";
  357.                     com.parameters.Add(reader.ReadUInt16());
  358.                     break;
  359.                 case 0x3C:
  360.                     com.Name = "NPCMessage(3C)";
  361.                     com.parameters.Add(reader.ReadUInt16()); //Internal Narc File Id
  362.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  363.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  364.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  365.                     com.parameters.Add(reader.ReadUInt16()); //Message Type
  366.                     break;
  367.                 case 0x3D:
  368.                     com.Name = "GenericMessage(3D)";
  369.                     com.parameters.Add(reader.ReadUInt16()); //Internal Narc File Id
  370.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  371.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  372.                     com.parameters.Add(reader.ReadUInt16()); //Message Type
  373.                     break;
  374.                 case 0x3E:
  375.                     com.Name = "CloseSpecificMessageKeyPress(3E)";
  376.                     break;
  377.                 case 0x3F:
  378.                     com.Name = "CloseGenericMessageKeyPress(3F)";
  379.                     break;
  380.                 case 0x40:
  381.                     com.Name = "ShowMoneyBox(40)";
  382.                     com.parameters.Add(reader.ReadUInt16()); //X coordinate
  383.                     com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  384.                     break;
  385.                 case 0x41:
  386.                     com.Name = "CloseMoneyBox(41)";
  387.                     break;
  388.                 case 0x42:
  389.                     com.Name = "UpdateMoneyBox(42)";
  390.                     break;
  391.                 case 0x43:
  392.                     com.Name = "BorderedMessage(43)";
  393.                     com.parameters.Add(reader.ReadUInt16()); //MessageId
  394.                     com.parameters.Add(reader.ReadUInt16()); //Color
  395.                     break;
  396.                 case 0x44:
  397.                     com.Name = "CloseBorderedMessage(44)";
  398.                     break;
  399.                 case 0x45:
  400.                     com.Name = "PaperMessage(45)";
  401.                     com.parameters.Add(reader.ReadUInt16()); //MessageId
  402.                     com.parameters.Add(reader.ReadUInt16()); //Trans. Coordinate
  403.                     break;
  404.                 case 0x46:
  405.                     com.Name = "ClosePaperMessage(46)";
  406.                     break;
  407.                 case 0x47:
  408.                     com.Name = "YesNoBox(47)";
  409.                     com.parameters.Add(reader.ReadUInt16()); //Variable: NO = 0, YES = 1
  410.                     break;
  411.                 case 0x48:
  412.                     com.Name = "GenderMessage(48)";
  413.                     com.parameters.Add(reader.ReadUInt16()); //Internal Narc File Id
  414.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  415.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  416.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  417.                     com.parameters.Add(reader.ReadUInt16()); //Message Type
  418.                     com.parameters.Add(reader.ReadUInt16());
  419.                     break;
  420.                 case 0x49:
  421.                     com.Name = "VersionMessage(49)";
  422.                     com.parameters.Add(reader.ReadUInt16()); //Internal Narc File Id
  423.                     com.parameters.Add(reader.ReadUInt16()); //Id Message Black
  424.                     com.parameters.Add(reader.ReadUInt16()); //Id Message White
  425.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  426.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  427.                     com.parameters.Add(reader.ReadUInt16()); //Message Type
  428.                     break;
  429.                 case 0x4A:
  430.                     com.Name = "AngryMessage(4A)";
  431.                     com.parameters.Add(reader.ReadByte());
  432.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  433.                     com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  434.                     break;
  435.                 case 0x4B:
  436.                     com.Name = "CloseAngryMessage(4B)";
  437.                     break;
  438.                 case 0x4C:
  439.                     com.Name = "SetVarHero(4C)";
  440.                     com.parameters.Add(reader.ReadByte()); //Text Var
  441.                     break;
  442.                 case 0x4D:
  443.                     com.Name = "SetVarItem(4D)";
  444.                     com.parameters.Add(reader.ReadByte()); //Text Var
  445.                     com.parameters.Add(reader.ReadUInt16()); //Item Id
  446.                     break;
  447.                 case 0x4E:
  448.                     com.Name = "SetVarItemMultiple(4E)";
  449.                     com.parameters.Add(reader.ReadByte()); //Text Var
  450.                     com.parameters.Add(reader.ReadUInt16()); //Item Id
  451.                     com.parameters.Add(reader.ReadUInt16());
  452.                     com.parameters.Add(reader.ReadByte()); //Single/Multiple Items
  453.                     break;
  454.                 case 0x4F:
  455.                     com.Name = "SetVarColoredItem(4F)";
  456.                     com.parameters.Add(reader.ReadByte()); //Text Var
  457.                     com.parameters.Add(reader.ReadUInt16()); //Item Id
  458.                     break;
  459.                 case 0x50:
  460.                     com.Name = "SetVarTM(50)";
  461.                     com.parameters.Add(reader.ReadByte()); //Text Var
  462.                     com.parameters.Add(reader.ReadUInt16()); //TM Id
  463.                     break;
  464.                 case 0x51:
  465.                     com.Name = "SetVarMove(51)";
  466.                     com.parameters.Add(reader.ReadByte()); //Text Var
  467.                     com.parameters.Add(reader.ReadUInt16()); //Move Id
  468.                     break;
  469.                 case 0x52:
  470.                     com.Name = "SetVarBag(52)";
  471.                     com.parameters.Add(reader.ReadByte()); //Text Var
  472.                     com.parameters.Add(reader.ReadUInt16()); //Bag Id
  473.                     break;
  474.                 case 0x53:
  475.                     com.Name = "SetVarPartyPokèmon(53)";
  476.                     com.parameters.Add(reader.ReadByte());
  477.                     com.parameters.Add(reader.ReadUInt16());
  478.                     break;
  479.                 case 0x54:
  480.                     com.Name = "SetVarPartyPokèmonNick(54)";
  481.                     com.parameters.Add(reader.ReadByte());
  482.                     com.parameters.Add(reader.ReadUInt16());
  483.                     break;
  484.                 case 0x55:
  485.                     com.Name = "SetVarDayCarePokèmon(55)";
  486.                     com.parameters.Add(reader.ReadByte());
  487.                     com.parameters.Add(reader.ReadUInt16());
  488.                     break;
  489.                 case 0x56:
  490.                     com.Name = "SetVarType(56)";             //382
  491.                     com.parameters.Add(reader.ReadByte());   //text variable to set
  492.                     com.parameters.Add(reader.ReadUInt16()); //type to set
  493.                     break;
  494.                 case 0x57:
  495.                     com.Name = "SetVarPokèmon(57)";
  496.                     com.parameters.Add(reader.ReadByte());
  497.                     com.parameters.Add(reader.ReadUInt16());
  498.                     break;
  499.                 case 0x58:
  500.                     com.Name = "SetVarColoredPokèmon(58)";
  501.                     com.parameters.Add(reader.ReadByte());
  502.                     com.parameters.Add(reader.ReadUInt16());
  503.                     break;
  504.                 case 0x59:
  505.                     com.Name = "SetVarLocation(59)";
  506.                     com.parameters.Add(reader.ReadByte());
  507.                     com.parameters.Add(reader.ReadUInt16());
  508.                     break;
  509.                 case 0x5A:
  510.                     com.Name = "SetVarSaying(5A)";
  511.                     com.parameters.Add(reader.ReadByte());
  512.                     com.parameters.Add(reader.ReadUInt16());
  513.                     break;
  514.                 case 0x5B:
  515.                     com.Name = "SetVarDayCarePokemonNick(5B)";
  516.                     com.parameters.Add(reader.ReadByte());
  517.                     com.parameters.Add(reader.ReadUInt16());
  518.                     break;
  519.                 case 0x5C: // example 654
  520.                     com.Name = "SetVarNumberBound(5C)";
  521.                     com.parameters.Add(reader.ReadByte()); // Text Var
  522.                     com.parameters.Add(reader.ReadUInt16()); // Number
  523.                     com.parameters.Add(reader.ReadUInt16()); // Max ID
  524.                     break;
  525.                 case 0x5D:
  526.                     com.Name = "SetVarMusicalInfo(5D)";
  527.                     com.parameters.Add(reader.ReadByte()); //Info ID
  528.                     com.parameters.Add(reader.ReadByte()); //Text Var
  529.                     com.parameters.Add(reader.ReadUInt16());
  530.                     break;
  531.                 case 0x5E:
  532.                     com.Name = "SetVarNations(5E)";
  533.                     com.parameters.Add(reader.ReadByte());
  534.                     com.parameters.Add(reader.ReadUInt16());
  535.                     break;
  536.                 case 0x5F:
  537.                     com.Name = "SetVarActivities";
  538.                     com.parameters.Add(reader.ReadByte());
  539.                     com.parameters.Add(reader.ReadUInt16());
  540.                     break;
  541.                 case 0x60:
  542.                     com.Name = "SetVarPower";
  543.                     com.parameters.Add(reader.ReadByte());
  544.                     com.parameters.Add(reader.ReadUInt16());
  545.                     break;
  546.                 case 0x61:
  547.                     com.Name = "SetVarTrainerType";
  548.                     com.parameters.Add(reader.ReadByte());
  549.                     com.parameters.Add(reader.ReadUInt16());
  550.                     break;
  551.                 case 0x62:
  552.                     com.Name = "SetVarTrainerType2";
  553.                     com.parameters.Add(reader.ReadByte());
  554.                     com.parameters.Add(reader.ReadUInt16());
  555.                     break;
  556.                 case 0x63:
  557.                     com.Name = "SetVarGeneralWord";
  558.                     com.parameters.Add(reader.ReadByte());
  559.                     com.parameters.Add(reader.ReadUInt16());
  560.                     break;
  561.                 case 0x64:
  562.                     com.Name = "ApplyMovement(64)";
  563.                     com.parameters.Add(reader.ReadUInt16());
  564.                     com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  565.                     var movOffset = com.parameters[1];
  566.                     if (!movOffsetList.Contains(movOffset))
  567.                     {
  568.                         movOffsetList.Add(movOffset);
  569.                     }
  570.                     break;
  571.                 case 0x65:
  572.                     com.Name = "WaitMovement(65)";
  573.                     break;
  574.                 case 0x66:
  575.                     com.Name = "66";
  576.                     com.parameters.Add(reader.ReadUInt16()); //RV
  577.                     com.parameters.Add(reader.ReadUInt16()); //NPC ID
  578.                     break;
  579.                 case 0x67:
  580.                     com.Name = "StoreNPCPosition(67)";
  581.                     com.parameters.Add(reader.ReadUInt16()); //NPC ID
  582.                     com.parameters.Add(reader.ReadUInt16()); //RV = X
  583.                     com.parameters.Add(reader.ReadUInt16()); //RV = Y
  584.                     break;
  585.                 case 0x68:
  586.                     com.Name = "StoreHeroPosition(68)";
  587.                     com.parameters.Add(reader.ReadUInt16()); //RV = X
  588.                     com.parameters.Add(reader.ReadUInt16()); //RV = Y
  589.                     break;
  590.                 case 0x69:
  591.                     com.Name = "MakeNPC(69)";
  592.                     com.parameters.Add(reader.ReadUInt16()); // X container
  593.                     com.parameters.Add(reader.ReadUInt16()); // Y container.
  594.                     com.parameters.Add(reader.ReadUInt16()); // Face Direction
  595.                     com.parameters.Add(reader.ReadUInt16()); // NPC Id
  596.                     com.parameters.Add(reader.ReadUInt16()); // Sprite
  597.                     com.parameters.Add(reader.ReadUInt16()); // Movement Permission
  598.                     break;
  599.                 case 0x6A:
  600.                     com.Name = "StoreNPCFlag(6A)";
  601.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  602.                     com.parameters.Add(reader.ReadUInt16()); //Flag
  603.                     break;
  604.                 case 0x6B:
  605.                     com.Name = "AddNPC(6B)";
  606.                     com.parameters.Add(reader.ReadUInt16()); //Npc Id
  607.                     break;
  608.                 case 0x6C:
  609.                     com.Name = "RemoveNPC(6C)";
  610.                     com.parameters.Add(reader.ReadUInt16()); //Npc Id
  611.                     break;
  612.                 case 0x6D:
  613.                     com.Name = "RelocateNPC(6D)";
  614.                     com.parameters.Add(reader.ReadUInt16()); //Npc Id
  615.                     com.parameters.Add(reader.ReadUInt16()); //X coordinate
  616.                     com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  617.                     com.parameters.Add(reader.ReadUInt16()); //Z coordinate
  618.                     com.parameters.Add(reader.ReadUInt16()); //Face direction
  619.                     break;
  620.                 case 0x6E:
  621.                     com.Name = "StoreHeroOrientation(6E)";
  622.                     com.parameters.Add(reader.ReadUInt16());
  623.                     break;
  624.                 case 0x6F:
  625.                     com.Name = "(6F)";
  626.                     com.parameters.Add(reader.ReadUInt16()); //RV = NPC Id
  627.                     com.parameters.Add(reader.ReadUInt16()); //RV = Bool
  628.                     break;
  629.                 case 0x70:
  630.                     com.Name = "(70)";
  631.                     com.parameters.Add(reader.ReadUInt16()); //RV = NPC Id
  632.                     com.parameters.Add(reader.ReadUInt16()); //RV = Bool
  633.                     com.parameters.Add(reader.ReadUInt16()); //X
  634.                     com.parameters.Add(reader.ReadUInt16()); //S_854 = 0, S_855 = 3
  635.                     com.parameters.Add(reader.ReadUInt16()); //Y
  636.                     break;
  637.                 case 0x73:
  638.                     com.Name = "73";
  639.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  640.                     com.parameters.Add(reader.ReadUInt16());
  641.                     break;
  642.                 case 0x74:
  643.                     com.Name = "FacePlayer(74)";
  644.                     break;
  645.                 case 0x75:
  646.                     com.Name = "Release(75)";
  647.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  648.                     break;
  649.                 case 0x76:
  650.                     com.Name = "76";
  651.                     com.parameters.Add(reader.ReadUInt16());
  652.                     com.parameters.Add(reader.ReadUInt16());
  653.                     com.parameters.Add(reader.ReadUInt16());
  654.                     com.parameters.Add(reader.ReadUInt16());
  655.                     break;
  656.                 case 0x77:
  657.                     com.Name = "Lock(77)";
  658.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  659.                     break;
  660.                 case 0x78:
  661.                     com.Name = "CheckLock(78)";
  662.                     com.parameters.Add(reader.ReadUInt16()); //RV
  663.                     break;
  664.                 case 0x79:
  665.                     com.Name = "StoreNPCLevel(79)";
  666.                     com.parameters.Add(reader.ReadUInt16());
  667.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  668.                     com.parameters.Add(reader.ReadUInt16());
  669.                     break;
  670.                 case 0x7B:
  671.                     com.Name = "MoveNpctoCoordinates";
  672.                     com.parameters.Add(reader.ReadUInt16()); //Npc Id
  673.                     com.parameters.Add(reader.ReadUInt16()); //X coordinate
  674.                     com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  675.                     com.parameters.Add(reader.ReadUInt16()); //Z coordinate
  676.                     break;
  677.                 case 0x7C:
  678.                     com.Name = "7C";
  679.                     com.parameters.Add(reader.ReadUInt16());
  680.                     com.parameters.Add(reader.ReadUInt16());
  681.                     com.parameters.Add(reader.ReadUInt16());
  682.                     break;
  683.                 case 0x7E:
  684.                     com.Name = "TeleportUpNPc";
  685.                     com.parameters.Add(reader.ReadUInt16()); //Npc Id
  686.                     break;
  687.                 case 0x7F:
  688.                     com.Name = "StoreTrainerIdNPCS";
  689.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  690.                     com.parameters.Add(reader.ReadUInt16()); //Trainer Id
  691.                     break;
  692.                 case 0x80:
  693.                     com.Name = "80";
  694.                     com.parameters.Add(reader.ReadUInt16());
  695.                     break;
  696.                 case 0x81:
  697.                     com.Name = "81";
  698.                     break;
  699.                 case 0x82:
  700.                     com.Name = "82";
  701.                     com.parameters.Add(reader.ReadUInt16());
  702.                     com.parameters.Add(reader.ReadUInt16());
  703.                     break;
  704.                 case 0x83:
  705.                     com.Name = "SetVar(83)";
  706.                     com.parameters.Add(reader.ReadUInt16());
  707.                     break;
  708.                 case 0x84:
  709.                     com.Name = "SetVar(84)";
  710.                     com.parameters.Add(reader.ReadUInt16());
  711.                     break;
  712.                 case 0x85:
  713.                     com.Name = "SingleTrainerBattle";
  714.                     com.parameters.Add(reader.ReadUInt16()); //Trainer Id
  715.                     com.parameters.Add(reader.ReadUInt16()); //2th Trainer Id (If 0x0 Single Battle)
  716.                     com.parameters.Add(reader.ReadUInt16()); //win loss logic (0 standard, 1 loss=>win)
  717.                     break;
  718.                 case 0x86:
  719.                     com.Name = "DoubleTrainerBattle";
  720.                     com.parameters.Add(reader.ReadUInt16()); //Ally
  721.                     com.parameters.Add(reader.ReadUInt16()); //Opp1 Trainer Id
  722.                     com.parameters.Add(reader.ReadUInt16()); //Opp2 Trainer Id
  723.                     com.parameters.Add(reader.ReadUInt16()); //win loss logic (0 standard, 1 loss=>win)
  724.                     break;
  725.                 case 0x87:
  726.                     com.Name = "MessageBattle";
  727.                     com.parameters.Add(reader.ReadUInt16());
  728.                     com.parameters.Add(reader.ReadUInt16()); //Message Id?
  729.                     com.parameters.Add(reader.ReadUInt16());
  730.                     break;
  731.                 case 0x88:
  732.                     com.Name = "MessageBattle2";
  733.                     com.parameters.Add(reader.ReadUInt16());
  734.                     com.parameters.Add(reader.ReadUInt16());
  735.                     com.parameters.Add(reader.ReadUInt16());
  736.                     break;
  737.                 case 0x8A:
  738.                     com.Name = "8A";
  739.                     com.parameters.Add(reader.ReadUInt16());
  740.                     com.parameters.Add(reader.ReadUInt16());
  741.                     break;
  742.                 case 0x8B:
  743.                     com.Name = "PlayTrainerMusic";
  744.                     com.parameters.Add(reader.ReadUInt16()); // music to play
  745.                     break;
  746.                 case 0x8C:
  747.                     com.Name = "EndBattle";
  748.                     break;
  749.                 case 0x8D:
  750.                     com.Name = "StoreBattleResult";
  751.                     com.parameters.Add(reader.ReadUInt16()); //Variable as container.
  752.                     break;
  753.                 case 0x8E:
  754.                     com.Name = "DisableTrainer";
  755.                     break;
  756.                 case 0x92:
  757.                     com.Name = "92";
  758.                     com.parameters.Add(reader.ReadUInt16()); //Trainer Id
  759.                     com.parameters.Add(reader.ReadUInt16()); //Variable as container
  760.                     break;
  761.                 case 0x93:
  762.                     com.Name = "93";
  763.                     com.parameters.Add(reader.ReadUInt16());
  764.                     com.parameters.Add(reader.ReadUInt16());
  765.                     break;
  766.                 case 0x94:
  767.                     com.Name = "TrainerBattle";
  768.                     com.parameters.Add(reader.ReadUInt16());//Trainer ID
  769.                     com.parameters.Add(reader.ReadUInt16());
  770.                     com.parameters.Add(reader.ReadUInt16());
  771.                     com.parameters.Add(reader.ReadUInt16());
  772.                     break;
  773.                 case 0x95:
  774.                     com.Name = "DeactiveTrainerId";
  775.                     com.parameters.Add(reader.ReadUInt16());
  776.                     break;
  777.                 case 0x96:
  778.                     com.Name = "96";
  779.                     com.parameters.Add(reader.ReadUInt16()); //Trainer ID
  780.                     break;
  781.                 case 0x97:
  782.                     com.Name = "StoreActiveTrainerId";
  783.                     com.parameters.Add(reader.ReadUInt16()); //Trainer ID
  784.                     com.parameters.Add(reader.ReadUInt16());
  785.                     break;
  786.                 case 0x98:
  787.                     com.Name = "ChangeMusic";
  788.                     com.parameters.Add(reader.ReadUInt16());
  789.                     break;
  790.                 case 0x9E:
  791.                     com.Name = "FadeToDefaultMusic";
  792.                     break;
  793.                 case 0x9F:
  794.                     com.Name = "PlayMusic";
  795.                     com.parameters.Add(reader.ReadUInt16());
  796.                     break;
  797.                 case 0xA1:
  798.                     com.Name = "StopMusic";
  799.                     com.parameters.Add(reader.ReadUInt16()); //sound?
  800.                     break;
  801.                 case 0xA2:
  802.                     com.Name = "A2";
  803.                     com.parameters.Add(reader.ReadUInt16()); //sound?
  804.                     com.parameters.Add(reader.ReadUInt16()); //strain
  805.                     break;
  806.                 case 0xA3:
  807.                     com.Name = "AddInstrument";
  808.                     com.parameters.Add(reader.ReadUInt16()); //Instrument
  809.                     break;
  810.                 case 0xA4:
  811.                     com.Name = "RemoveInstrument";
  812.                     com.parameters.Add(reader.ReadUInt16()); //Instrument
  813.                     break;
  814.                 case 0xA5:
  815.                     com.Name = "CheckInstrument";
  816.                     com.parameters.Add(reader.ReadUInt16()); //Active/Not active(ret)
  817.                     com.parameters.Add(reader.ReadUInt16()); //Instrument
  818.                     break;
  819.                 case 0xA6:
  820.                     com.Name = "PlaySSeq(A6)";
  821.                     com.parameters.Add(reader.ReadUInt16()); //Sound Id
  822.                     break;
  823.                 case 0xA7:
  824.                     com.Name = "WaitSound(A7)";
  825.                     break;
  826.                 case 0xA8:
  827.                     com.Name = "WaitSound(A8)";
  828.                     break;
  829.                 case 0xA9:
  830.                     com.Name = "PlayFanfare";
  831.                     com.parameters.Add(reader.ReadUInt16()); //Fanfare Id
  832.                     break;
  833.                 case 0xAA:
  834.                     com.Name = "WaitFanfare";
  835.                     break;
  836.                 case 0xAB:
  837.                     com.Name = "Cry";
  838.                     com.parameters.Add(reader.ReadUInt16()); //Pokemon Index #
  839.                     com.parameters.Add(reader.ReadUInt16()); //0 ~ unknown
  840.                     break;
  841.                 case 0xAC:
  842.                     com.Name = "WaitCry";
  843.                     break;
  844.                 case 0xAF:
  845.                     com.Name = "SetTextScriptMessage(AF)";
  846.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  847.                     com.parameters.Add(reader.ReadUInt16()); //Box Message Id
  848.                     com.parameters.Add(reader.ReadUInt16()); //Script Id
  849.                     break;
  850.                 case 0xB0:
  851.                     com.Name = "CloseMulti";
  852.                     break;
  853.                 case 0xB1:
  854.                     com.Name = "B1";
  855.                     break;
  856.                 case 0xB2:
  857.                     com.Name = "Multi(B2)";         //88
  858.                     com.parameters.Add(reader.ReadByte());
  859.                     com.parameters.Add(reader.ReadByte());
  860.                     com.parameters.Add(reader.ReadByte());
  861.                     com.parameters.Add(reader.ReadByte());
  862.                     com.parameters.Add(reader.ReadByte());
  863.                     com.parameters.Add(reader.ReadUInt16());
  864.                     break;
  865.                 case 0xB3:
  866.                     com.Name = "FadeScreen";
  867.                     com.parameters.Add(reader.ReadUInt16());
  868.                     com.parameters.Add(reader.ReadUInt16());
  869.                     com.parameters.Add(reader.ReadUInt16());
  870.                     com.parameters.Add(reader.ReadUInt16());
  871.                     break;
  872.                 case 0xB4:
  873.                     com.Name = "ResetScreen";
  874.                     break;
  875.                 case 0xB5:
  876.                     com.Name = "GiveItem";
  877.                     com.parameters.Add(reader.ReadUInt16());
  878.                     com.parameters.Add(reader.ReadUInt16());
  879.                     com.parameters.Add(reader.ReadUInt16());
  880.                     break;
  881.                 case 0xB6:
  882.                     com.Name = "TakeItem";
  883.                     com.parameters.Add(reader.ReadUInt16()); // Item Index Number
  884.                     com.parameters.Add(reader.ReadUInt16()); // Quantity
  885.                     com.parameters.Add(reader.ReadUInt16()); // Return Result (0=added successfully | 1=full bag)
  886.                     break;
  887.                 case 0xB7:
  888.                     com.Name = "CheckItemBagSpace";     //Store if it is possible to give an item.
  889.                     com.parameters.Add(reader.ReadUInt16()); // Item Index Number
  890.                     com.parameters.Add(reader.ReadUInt16()); // Quantity
  891.                     com.parameters.Add(reader.ReadUInt16()); // Return Result (0=not full | 1=full)
  892.                     break;
  893.                 case 0xB8:
  894.                     com.Name = "CheckItemBagNumber";              //222
  895.                     com.parameters.Add(reader.ReadUInt16()); // Item #
  896.                     com.parameters.Add(reader.ReadUInt16()); // Minimum Quantity / Return X if has >=1
  897.                     com.parameters.Add(reader.ReadUInt16()); // Result Storage variable/container
  898.                     break;
  899.                 case 0xB9:
  900.                     com.Name = "StoreItemCount";
  901.                     com.parameters.Add(reader.ReadUInt16()); // item #
  902.                     com.parameters.Add(reader.ReadUInt16()); // Return to storage
  903.                     break;
  904.                 case 0xBA:
  905.                     com.Name = "CheckItemContainer";
  906.                     com.parameters.Add(reader.ReadUInt16());
  907.                     com.parameters.Add(reader.ReadUInt16());
  908.                     break;
  909.                 case 0xBB:
  910.                     com.Name = "StoreItemBag";
  911.                     com.parameters.Add(reader.ReadUInt16());
  912.                     com.parameters.Add(reader.ReadUInt16());
  913.                     break;
  914.                 case 0xBC:
  915.                     com.Name = "BC";
  916.                     com.parameters.Add(reader.ReadUInt16());
  917.                     break;
  918.                 case 0xBD:
  919.                     com.Name = "BD";
  920.                     com.parameters.Add(reader.ReadUInt16());
  921.                     com.parameters.Add(reader.ReadUInt16());
  922.                     break;
  923.                 case 0xBE:
  924.                     com.Name = "Warp";
  925.                     com.parameters.Add(reader.ReadUInt16()); //Map Id
  926.                     com.parameters.Add(reader.ReadUInt16()); // X coordinate
  927.                     com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  928.                     break;
  929.                 case 0xBF:
  930.                     com.Name = "TeleportWarp";
  931.                     com.parameters.Add(reader.ReadUInt16()); //Map Id
  932.                     com.parameters.Add(reader.ReadUInt16()); // X coordinate
  933.                     com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  934.                     com.parameters.Add(reader.ReadUInt16()); // Z coordinate
  935.                     break;
  936.                 case 0xC1:
  937.                     com.Name = "FallWarp";
  938.                     com.parameters.Add(reader.ReadUInt16()); //Map Id
  939.                     com.parameters.Add(reader.ReadUInt16()); // X coordinate
  940.                     com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  941.                     break;
  942.                 case 0xC2:
  943.                     com.Name = "FastWarp";
  944.                     com.parameters.Add(reader.ReadUInt16()); //Map Id
  945.                     com.parameters.Add(reader.ReadUInt16()); // X coordinate
  946.                     com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  947.                     com.parameters.Add(reader.ReadUInt16()); // Hero's Facing
  948.                     break;
  949.                 case 0xC3:
  950.                     com.Name = "UnionWarp"; // warp to union room
  951.                     break;
  952.                 case 0xC4:
  953.                     com.Name = "TeleportWarp";
  954.                     com.parameters.Add(reader.ReadUInt16()); //Map Id
  955.                     com.parameters.Add(reader.ReadUInt16()); // X coordinate
  956.                     com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  957.                     com.parameters.Add(reader.ReadUInt16()); // Z coordinate
  958.                     com.parameters.Add(reader.ReadUInt16()); // Hero's Facing
  959.                     break;
  960.                 case 0xC5:
  961.                     com.Name = "SurfAnimation";
  962.                     break;
  963.                 case 0xC6:
  964.                     com.Name = "SpecialAnimation";
  965.                     com.parameters.Add(reader.ReadUInt16());
  966.                     break;
  967.                 case 0xC7:
  968.                     com.Name = "SpecialAnimation2";
  969.                     com.parameters.Add(reader.ReadUInt16());
  970.                     com.parameters.Add(reader.ReadUInt16());
  971.                     break;
  972.                 case 0xC8:
  973.                     com.Name = "CallAnimation";
  974.                     com.parameters.Add(reader.ReadUInt16()); //Animation Id
  975.                     com.parameters.Add(reader.ReadUInt16());
  976.                     break;
  977.                 case 0xCB:
  978.                     com.Name = "StoreRandomNumber";
  979.                     com.parameters.Add(reader.ReadUInt16());
  980.                     com.parameters.Add(reader.ReadUInt16());
  981.                     break;
  982.                 case 0xCC:
  983.                     com.Name = "StoreVarItem";
  984.                     com.parameters.Add(reader.ReadUInt16());
  985.                     break;
  986.                 case 0xCD:
  987.                     com.Name = "StoreDayPart";
  988.                     com.parameters.Add(reader.ReadUInt16());
  989.                     break;
  990.                 case 0xCE:
  991.                     com.Name = "StoreStarCardNumber";
  992.                     com.parameters.Add(reader.ReadUInt16()); //Star on Trainer Card
  993.                     break;
  994.                 case 0xCF:
  995.                     com.Name = "StoreDay(CF)";
  996.                     com.parameters.Add(reader.ReadUInt16()); //RV = Day
  997.                     break;
  998.                 case 0xD0:
  999.                     com.Name = "StoreDate";
  1000.                     com.parameters.Add(reader.ReadUInt16()); //Month Return to var/cont
  1001.                     com.parameters.Add(reader.ReadUInt16()); //Day Return to var/cont
  1002.                     break;
  1003.                 case 0xD1:
  1004.                     com.Name = "StoreHour";
  1005.                     com.parameters.Add(reader.ReadUInt16()); //Hour(Ret)
  1006.                     com.parameters.Add(reader.ReadUInt16());
  1007.                     break;
  1008.                 case 0xD2:
  1009.                     com.Name = "StoreSeason";
  1010.                     com.parameters.Add(reader.ReadUInt16()); //Season(Ret)
  1011.                     break;
  1012.                 case 0xD3:
  1013.                     com.Name = "D3";
  1014.                     com.parameters.Add(reader.ReadUInt16());
  1015.                     break;
  1016.                 case 0xD4:
  1017.                     com.Name = "StoreBirthDay";
  1018.                     com.parameters.Add(reader.ReadUInt16()); //Month
  1019.                     com.parameters.Add(reader.ReadUInt16()); //Day
  1020.                     break;
  1021.                 case 0xD5:
  1022.                     com.Name = "StoreBadge";
  1023.                     com.parameters.Add(reader.ReadUInt16()); //Variable to return
  1024.                     com.parameters.Add(reader.ReadUInt16()); //Badge Id
  1025.                     break;
  1026.                 case 0xD6:
  1027.                     com.Name = "SetBadge";
  1028.                     com.parameters.Add(reader.ReadUInt16()); //Badge Id
  1029.                     break;
  1030.                 case 0xD7:
  1031.                     com.Name = "StoreBadgeNumber";
  1032.                     com.parameters.Add(reader.ReadUInt16());
  1033.                     break;
  1034.                 case 0xD8:
  1035.                     com.Name = "CheckChangeMapEvent";
  1036.                     com.parameters.Add(reader.ReadUInt16()); //Id event
  1037.                     com.parameters.Add(reader.ReadUInt16()); //Is changed? (ret)
  1038.                     break;
  1039.                 case 0xD9:
  1040.                     com.Name = "D9";
  1041.                     com.parameters.Add(reader.ReadUInt16()); //Number
  1042.                     break;
  1043.                 case 0xDA:
  1044.                     com.Name = "DA";
  1045.                     com.parameters.Add(reader.ReadUInt16());
  1046.                     com.parameters.Add(reader.ReadUInt16());
  1047.                     com.parameters.Add(reader.ReadUInt16());
  1048.                     break;
  1049.                 case 0xDB:
  1050.                     com.Name = "ActUnionRoom";
  1051.                     break;
  1052.                 case 0xDC:
  1053.                     com.Name = "DC";
  1054.                     com.parameters.Add(reader.ReadUInt16());
  1055.                     com.parameters.Add(reader.ReadUInt16());
  1056.                     com.parameters.Add(reader.ReadUInt16());
  1057.                     com.parameters.Add(reader.ReadUInt16());
  1058.                     break;
  1059.                 case 0xDD:
  1060.                     com.Name = "StorePokèmonCaught";
  1061.                     com.parameters.Add(reader.ReadUInt16());
  1062.                     com.parameters.Add(reader.ReadUInt16());
  1063.                     break;
  1064.                 case 0xDE:
  1065.                     com.Name = "ShowPokèmonSpecies"; // species display popup, Store
  1066.                     com.parameters.Add(reader.ReadUInt16()); //0
  1067.                     com.parameters.Add(reader.ReadUInt16()); //species
  1068.                     break;
  1069.                 case 0xDF:
  1070.                     com.Name = "CheckPokèmonSeen";
  1071.                     com.parameters.Add(reader.ReadUInt16());
  1072.                     com.parameters.Add(reader.ReadUInt16()); //Pokèmon Id
  1073.                     com.parameters.Add(reader.ReadUInt16()); //True/False (Ret)
  1074.                     break;
  1075.                 case 0xE0:
  1076.                     com.Name = "StoreVersion";
  1077.                     com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  1078.                     break;
  1079.                 case 0xE1:
  1080.                     com.Name = "StoreGender";
  1081.                     com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  1082.                     break;
  1083.                 case 226:
  1084.                     com.Name = "E2";
  1085.                     com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  1086.                     break;
  1087.                 case 0xE4:
  1088.                     com.Name = "E4";
  1089.                     com.parameters.Add(reader.ReadUInt16());
  1090.                     break;
  1091.                 case 0xE5:
  1092.                     com.Name = "StoreTrainerType";
  1093.                     com.parameters.Add(reader.ReadUInt16());
  1094.                     com.parameters.Add(reader.ReadUInt16());
  1095.                     break;
  1096.                 case 230:
  1097.                     com.Name = "CheckKeyItem";
  1098.                     com.parameters.Add(reader.ReadUInt16());
  1099.                     com.parameters.Add(reader.ReadUInt16());
  1100.                     break;
  1101.                 case 0xE7:
  1102.                     com.Name = "ActivateKeyItem";
  1103.                     com.parameters.Add(reader.ReadUInt16());
  1104.                     break;
  1105.                 case 232:
  1106.                     com.Name = "CheckKeyItem2";
  1107.                     com.parameters.Add(reader.ReadUInt16());
  1108.                     com.parameters.Add(reader.ReadUInt16());
  1109.                     break;
  1110.                 case 0xE9:
  1111.                     com.Name = "E9";
  1112.                     com.parameters.Add(reader.ReadUInt16());
  1113.                     break;
  1114.                 case 0xEA:
  1115.                     com.Name = "EA";
  1116.                     com.parameters.Add(reader.ReadUInt16());
  1117.                     break;
  1118.                 case 0xEB:
  1119.                     com.Name = "EB";
  1120.                     com.parameters.Add(reader.ReadUInt16());
  1121.                     break;
  1122.                 case 0xEC:
  1123.                     com.Name = "TakeEggDayCare";
  1124.                     break;
  1125.                 case 0xED:
  1126.                     com.Name = "KeepEggDayCare";
  1127.                     break;
  1128.                 case 0xEE:
  1129.                     com.Name = "EE";
  1130.                     com.parameters.Add(reader.ReadUInt16());
  1131.                     break;
  1132.                 case 0xEF:
  1133.                     com.Name = "StoreAffinityDayCare";
  1134.                     com.parameters.Add(reader.ReadUInt16());
  1135.                     break;
  1136.                 case 0xF0:
  1137.                     com.Name = "GivePokèDayCare";
  1138.                     com.parameters.Add(reader.ReadUInt16()); //POKE
  1139.                     break;
  1140.                 case 0xF1:
  1141.                     com.Name = "TakePokèDayCare";
  1142.                     com.parameters.Add(reader.ReadUInt16());
  1143.                     break;
  1144.                 case 0xF2:
  1145.                     com.Name = "StorePokèDayCare";
  1146.                     com.parameters.Add(reader.ReadUInt16());
  1147.                     com.parameters.Add(reader.ReadUInt16());
  1148.                     break;
  1149.                 case 0xF3:
  1150.                     com.Name = "StoreFormDayCare";
  1151.                     com.parameters.Add(reader.ReadUInt16());
  1152.                     com.parameters.Add(reader.ReadUInt16());
  1153.                     break;
  1154.                 case 0xF4:
  1155.                     com.Name = "StoreLevelDayCare";
  1156.                     com.parameters.Add(reader.ReadUInt16());
  1157.                     com.parameters.Add(reader.ReadUInt16());
  1158.                     break;
  1159.                 case 0xF5:
  1160.                     com.Name = "StoreLevelDiffDayCare";
  1161.                     com.parameters.Add(reader.ReadUInt16());
  1162.                     com.parameters.Add(reader.ReadUInt16());
  1163.                     break;
  1164.                 case 0xF6:
  1165.                     com.Name = "StoreMoneyDayCare";
  1166.                     com.parameters.Add(reader.ReadUInt16());
  1167.                     com.parameters.Add(reader.ReadUInt16());
  1168.                     break;
  1169.                 case 0xF7:
  1170.                     com.Name = "ChoosePokèDayCare";
  1171.                     com.parameters.Add(reader.ReadUInt16());
  1172.                     break;
  1173.                 case 0xF8:
  1174.                     com.Name = "StoreDayCare(F8)";
  1175.                     com.parameters.Add(reader.ReadUInt16());
  1176.                     com.parameters.Add(reader.ReadUInt16());
  1177.                     break;
  1178.                 case 0xF9:
  1179.                     com.Name = "F9";
  1180.                     com.parameters.Add(reader.ReadUInt16());
  1181.                     break;
  1182.                 case 0xFA:
  1183.                     com.Name = "TakeMoney";         //66
  1184.                     com.parameters.Add(reader.ReadUInt16()); //Removes this amount of money from the player's $.
  1185.                     break;
  1186.                 case 0xFB:
  1187.                     com.Name = "CheckEnoughMoney";          //66
  1188.                     com.parameters.Add(reader.ReadUInt16()); //Result storage container (0=enough $|1=not enough $)
  1189.                     com.parameters.Add(reader.ReadUInt16()); //Stores if current $ is >= [THIS ARGUMENT]
  1190.                     break;
  1191.                 case 0xFC:
  1192.                     com.Name = "StorePokèmonHappiness";
  1193.                     com.parameters.Add(reader.ReadUInt16()); //Happiness storage container
  1194.                     com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  1195.                     break;
  1196.                 case 0xFD:
  1197.                     com.Name = "IncPokèmonHappiness";
  1198.                     com.parameters.Add(reader.ReadUInt16());
  1199.                     com.parameters.Add(reader.ReadUInt16());
  1200.                     com.parameters.Add(reader.ReadUInt16());
  1201.                     break;
  1202.                 case 0xFE:
  1203.                     com.Name = "StorePartySpecies";
  1204.                     if (reader.BaseStream.Position == reader.BaseStream.Length) //this is temporary to catch movement related errors
  1205.                     {
  1206.                         com.isEnd = 1;
  1207.                         break;
  1208.                     }
  1209.                     com.parameters.Add(reader.ReadUInt16());    // Result Storage of Storeed species index #
  1210.                     if (reader.BaseStream.Position + 1 >= reader.BaseStream.Length)
  1211.                     {
  1212.                         com.isEnd = 1;
  1213.                         break;
  1214.                     }
  1215.                     else
  1216.                     {
  1217.                         com.parameters.Add(reader.ReadUInt16()); // PKM to Store
  1218.                         break;
  1219.                     }
  1220.                 case 0xFF:
  1221.                     com.Name = "StorePokèmonFormNumber";
  1222.                     com.parameters.Add(reader.ReadUInt16());
  1223.                     com.parameters.Add(reader.ReadUInt16());
  1224.                     var nextFF = reader.ReadUInt16();
  1225.                     while (nextFF >= 0x4000) { com.parameters.Add(nextFF); nextFF = reader.ReadUInt16(); }
  1226.                     reader.BaseStream.Position -= 2;
  1227.                     break;
  1228.                 case 0x100:
  1229.                     com.Name = "CheckPokèrus";
  1230.                     com.parameters.Add(reader.ReadUInt16());
  1231.                     break;
  1232.                 case 0x101:
  1233.                     com.Name = "101";
  1234.                     com.parameters.Add(reader.ReadUInt16());
  1235.                     com.parameters.Add(reader.ReadUInt16());
  1236.                     break;
  1237.                 case 0x102:
  1238.                     com.Name = "CheckEgg";
  1239.                     com.parameters.Add(reader.ReadUInt16()); //Result storage container
  1240.                     com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  1241.                     break;
  1242.                 case 0x103:
  1243.                     com.Name = "StorePartyNumberMinimum";
  1244.                     com.parameters.Add(reader.ReadUInt16()); //Result Storage container
  1245.                     com.parameters.Add(reader.ReadUInt16()); //Does the player have more than [VALUE]? Return 0 if true.
  1246.                     break;
  1247.                 case 0x104:
  1248.                     com.Name = "HealPokèmon";
  1249.                     break;
  1250.                 case 0x105:
  1251.                     com.Name = "RenamePokèmon";
  1252.                     com.parameters.Add(reader.ReadUInt16());
  1253.                     com.parameters.Add(reader.ReadUInt16());
  1254.                     com.parameters.Add(reader.ReadUInt16());
  1255.                     break;
  1256.                 case 0x106:
  1257.                     com.Name = "106";
  1258.                     com.parameters.Add(reader.ReadUInt16()); //Req
  1259.                     break;
  1260.                 case 0x107:
  1261.                     com.Name = "StoreChosenPokèmon";
  1262.                     com.parameters.Add(reader.ReadUInt16()); //Dialog Result Logic (1 if PKM Chosen) default 0
  1263.                     com.parameters.Add(reader.ReadUInt16()); //    \->Variable Storage
  1264.                     com.parameters.Add(reader.ReadUInt16()); //Pokemon Choice Variable Storage
  1265.                     break;
  1266.                 case 0x108:
  1267.                     com.Name = "StorePokèmonMoveLearned";
  1268.                     com.parameters.Add(reader.ReadUInt16());
  1269.                     com.parameters.Add(reader.ReadUInt16());
  1270.                     break;
  1271.                 case 0x109:
  1272.                     com.Name = "ChooseMoveForgot";
  1273.                     com.parameters.Add(reader.ReadUInt16());
  1274.                     com.parameters.Add(reader.ReadUInt16());
  1275.                     com.parameters.Add(reader.ReadUInt16());
  1276.                     com.parameters.Add(reader.ReadUInt16());
  1277.                     break;
  1278.                 case 0x10A:
  1279.                     com.Name = "StorePokèmonMoveForgot";
  1280.                     com.parameters.Add(reader.ReadUInt16());
  1281.                     com.parameters.Add(reader.ReadUInt16());
  1282.                     com.parameters.Add(reader.ReadUInt16());
  1283.                     break;
  1284.                 case 0x10B:
  1285.                     com.Name = "10B";
  1286.                     com.parameters.Add(reader.ReadUInt16());
  1287.                     com.parameters.Add(reader.ReadUInt16());
  1288.                     com.parameters.Add(reader.ReadUInt16());
  1289.                     break;
  1290.                 case 0x10C:
  1291.                     com.Name = "GivePokèmon";
  1292.                     com.parameters.Add(reader.ReadUInt16()); //Id Pokèmon
  1293.                     com.parameters.Add(reader.ReadUInt16());
  1294.                     com.parameters.Add(reader.ReadUInt16()); //Item
  1295.                     com.parameters.Add(reader.ReadUInt16()); //Level
  1296.                     break;
  1297.                 case 0x10D:
  1298.                     com.Name = "StorePokemonPartyAt";
  1299.                     com.parameters.Add(reader.ReadUInt16()); //Id Pokèmon Party
  1300.                     com.parameters.Add(reader.ReadUInt16());
  1301.                     break;
  1302.                 case 0x10E:
  1303.                     com.Name = "GivePokèmon(10E)";
  1304.                     com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  1305.                     com.parameters.Add(reader.ReadUInt16()); //Egg Pokemon to try to
  1306.                     com.parameters.Add(reader.ReadUInt16()); //Forme
  1307.                     com.parameters.Add(reader.ReadUInt16()); //Level
  1308.                     com.parameters.Add(reader.ReadUInt16()); //3
  1309.                     com.parameters.Add(reader.ReadUInt16()); //2
  1310.                     com.parameters.Add(reader.ReadUInt16()); //0
  1311.                     com.parameters.Add(reader.ReadUInt16()); //0
  1312.                     com.parameters.Add(reader.ReadUInt16()); //4
  1313.                     break;
  1314.                 case 0x10F:
  1315.                     com.Name = "GiveEgg(10F)";
  1316.                     com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  1317.                     com.parameters.Add(reader.ReadUInt16()); //Egg Pokemon to try to
  1318.                     com.parameters.Add(reader.ReadUInt16()); //Response if Party is Full (~0=true or FORME?)
  1319.                     break;
  1320.                 case 0x110:
  1321.                     com.Name = "StorePokèmonSex";
  1322.                     com.parameters.Add(reader.ReadUInt16());
  1323.                     com.parameters.Add(reader.ReadUInt16());
  1324.                     com.parameters.Add(reader.ReadUInt16());
  1325.                     break;
  1326.                 case 0x113:
  1327.                     com.Name = "CheckPokèmonNickname";
  1328.                     com.parameters.Add(reader.ReadUInt16()); //Is different from default?(Ret)
  1329.                     com.parameters.Add(reader.ReadUInt16()); //Pokèmon Id
  1330.                     break;
  1331.                 case 0x114:
  1332.                     com.Name = "StorePartyHavePokèmon";
  1333.                     com.parameters.Add(reader.ReadUInt16());
  1334.                     com.parameters.Add(reader.ReadUInt16()); //RV
  1335.                     break;
  1336.                 case 0x115:
  1337.                     com.Name = "StorePartyCanLearnMove";
  1338.                     com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  1339.                     com.parameters.Add(reader.ReadUInt16()); //move to Store
  1340.                     com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  1341.                     break;
  1342.                 case 0x116:
  1343.                     com.Name = "StorePartyCanUseMove";
  1344.                     com.parameters.Add(reader.ReadUInt16());
  1345.                     com.parameters.Add(reader.ReadUInt16()); //RV
  1346.                     break;
  1347.                 case 0x117:
  1348.                     com.Name = "StorePokemonForm";
  1349.                     com.parameters.Add(reader.ReadUInt16()); //var
  1350.                     com.parameters.Add(reader.ReadUInt16()); //val
  1351.                     break;
  1352.                 case 0x118:
  1353.                     com.Name = "CheckChosenSpecies";
  1354.                     com.parameters.Add(reader.ReadUInt16()); //Specie
  1355.                     com.parameters.Add(reader.ReadUInt16()); //RV
  1356.                     com.parameters.Add(reader.ReadUInt16()); //Pokèmon
  1357.                     break;
  1358.                 case 0x11A:
  1359.                     com.Name = "11A";
  1360.                     com.parameters.Add(reader.ReadUInt16());
  1361.                     com.parameters.Add(reader.ReadUInt16());
  1362.                     com.parameters.Add(reader.ReadUInt16());
  1363.                     com.parameters.Add(reader.ReadUInt16());
  1364.                     break;
  1365.                 case 0x11B:
  1366.                     com.Name = "StorePartyType";
  1367.                     com.parameters.Add(reader.ReadUInt16()); // Return Type 1
  1368.                     com.parameters.Add(reader.ReadUInt16()); // Return Type 2
  1369.                     com.parameters.Add(reader.ReadUInt16()); // Party member to Store
  1370.                     break;
  1371.                 case 0x11C:
  1372.                     com.Name = "ForgotMove";
  1373.                     com.parameters.Add(reader.ReadUInt16()); //var
  1374.                     com.parameters.Add(reader.ReadUInt16()); //var
  1375.                     com.parameters.Add(reader.ReadUInt16()); //var
  1376.                     break;
  1377.                 case 0x11D:
  1378.                     com.Name = "SetFavorite";           //82
  1379.                     com.parameters.Add(reader.ReadUInt16()); //Party member to set as favorite Pokemon
  1380.                     break;
  1381.                 case 0x11E:
  1382.                     com.Name = "BadgeAnimation";
  1383.                     com.parameters.Add(reader.ReadUInt16());
  1384.                     break;
  1385.                 case 0x11F:
  1386.                     com.Name = "StorePokèmonPartyNumberBadge";
  1387.                     com.parameters.Add(reader.ReadUInt16());
  1388.                     com.parameters.Add(reader.ReadUInt16());
  1389.                     break;
  1390.                 case 0x120:
  1391.                     com.Name = "SetVarPokèmonTrade";
  1392.                     com.parameters.Add(reader.ReadUInt16());
  1393.                     com.parameters.Add(reader.ReadUInt16());
  1394.                     break;
  1395.                 case 0x121:
  1396.                     com.Name = "CheckPartyAmount";
  1397.                     com.parameters.Add(reader.ReadUInt16()); //Result Storage Variable(Boolean)
  1398.                     com.parameters.Add(reader.ReadUInt16()); //Amount
  1399.                     break;
  1400.                 case 0x122:
  1401.                     com.Name = "122";
  1402.                     break;
  1403.                 case 0x123:
  1404.                     com.Name = "123";
  1405.                     break;
  1406.                 case 0x124:
  1407.                     com.Name = "124";
  1408.                     com.parameters.Add(reader.ReadUInt16());
  1409.                     com.parameters.Add(reader.ReadUInt16());
  1410.                     break;
  1411.                 case 0x125:
  1412.                     com.Name = "125";
  1413.                     com.parameters.Add(reader.ReadUInt16());
  1414.                     com.parameters.Add(reader.ReadUInt16());
  1415.                     com.parameters.Add(reader.ReadUInt16());
  1416.                     com.parameters.Add(reader.ReadUInt16());
  1417.                     break;
  1418.                 case 0x126:
  1419.                     com.Name = "126";
  1420.                     com.parameters.Add(reader.ReadUInt16());
  1421.                     com.parameters.Add(reader.ReadUInt16());
  1422.                     com.parameters.Add(reader.ReadUInt16());
  1423.                     com.parameters.Add(reader.ReadUInt16());
  1424.                     break;
  1425.                 case 0x127:
  1426.                     com.Name = "127";
  1427.                     com.parameters.Add(reader.ReadUInt16());
  1428.                     com.parameters.Add(reader.ReadUInt16());//Ow
  1429.                     com.parameters.Add(reader.ReadUInt16());//X
  1430.                     com.parameters.Add(reader.ReadUInt16());//Y
  1431.                     break;
  1432.                 case 0x128:
  1433.                     com.Name = "128";
  1434.                     com.parameters.Add(reader.ReadUInt16());
  1435.                     break;
  1436.                 case 0x129:
  1437.                     com.Name = "129";
  1438.                     com.parameters.Add(reader.ReadUInt16());
  1439.                     com.parameters.Add(reader.ReadUInt16());
  1440.                     break;
  1441.                 case 0x12A:
  1442.                     com.Name = "12A";
  1443.                     com.parameters.Add(reader.ReadUInt16());
  1444.                     break;
  1445.                 case 0x12B:
  1446.                     com.Name = "12B";
  1447.                     com.parameters.Add(reader.ReadUInt16()); //Req
  1448.                     com.parameters.Add(reader.ReadUInt16()); //Req
  1449.                     com.parameters.Add(reader.ReadUInt16()); //Req
  1450.                     break;
  1451.                 case 0x12C:
  1452.                     com.Name = "12C";
  1453.                     com.parameters.Add(reader.ReadUInt16());
  1454.                     break;
  1455.                 case 0x12D:
  1456.                     com.Name = "12D";
  1457.                     com.parameters.Add(reader.ReadUInt16());
  1458.                     com.parameters.Add(reader.ReadUInt16());
  1459.                     com.parameters.Add(reader.ReadUInt16()); //0
  1460.                     com.parameters.Add(reader.ReadUInt16());
  1461.                     break;
  1462.                 case 0x12E:
  1463.                     com.Name = "12E";
  1464.                     com.parameters.Add(reader.ReadUInt16());
  1465.                     com.parameters.Add(reader.ReadUInt16());
  1466.                     com.parameters.Add(reader.ReadUInt16());
  1467.                     break;
  1468.                 case 0x12F:
  1469.                     com.Name = "12F";
  1470.                     com.parameters.Add(reader.ReadUInt16());
  1471.                     break;
  1472.                 case 0x130:
  1473.                     com.Name = "BootPCSound";
  1474.                     break;
  1475.                 case 0x131:
  1476.                     com.Name = "PC-131";
  1477.                     break;
  1478.                 case 0x132:
  1479.                     com.Name = "132";
  1480.                     com.parameters.Add(reader.ReadUInt16());
  1481.                     break;
  1482.                 case 0x134:
  1483.                     com.Name = "134";
  1484.                     break;
  1485.                 case 0x135:
  1486.                     com.Name = "135";
  1487.                     break;
  1488.                 case 0x136:
  1489.                     com.Name = "136";
  1490.                     com.parameters.Add(reader.ReadUInt16());
  1491.                     com.parameters.Add(reader.ReadUInt16());
  1492.                     break;
  1493.                 case 0x137:
  1494.                     com.Name = "ShowClockSaving";
  1495.                     com.parameters.Add(reader.ReadUInt16());
  1496.                     break;
  1497.                 case 0x138:
  1498.                     com.Name = "StoreSaveData";
  1499.                     com.parameters.Add(reader.ReadUInt16());
  1500.                     com.parameters.Add(reader.ReadUInt16());
  1501.                     com.parameters.Add(reader.ReadUInt16());
  1502.                     break;
  1503.                 case 0x139:
  1504.                     com.Name = "SetComunication";
  1505.                     com.parameters.Add(reader.ReadUInt16());
  1506.                     break;
  1507.                 case 0x13A:
  1508.                     com.Name = "StoreComunicationStatus";
  1509.                     com.parameters.Add(reader.ReadUInt16());
  1510.                     break;
  1511.                 case 0x13B:
  1512.                     com.Name = "CheckWireless";
  1513.                     com.parameters.Add(reader.ReadUInt16());
  1514.                     break;
  1515.                 case 0x13C:
  1516.                     com.Name = "13C";
  1517.                     break;
  1518.                 case 0x13D:
  1519.                     com.Name = "13D";
  1520.                     break;
  1521.                 case 0x13E:
  1522.                     com.Name = "13E";
  1523.                     break;
  1524.                 case 0x13F:
  1525.                     com.Name = "StartCameraEvent";
  1526.                     break;
  1527.                 case 0x140:
  1528.                     com.Name = "StopCameraEvent";
  1529.                     break;
  1530.                 case 0x141:
  1531.                     com.Name = "LockCamera";
  1532.                     break;
  1533.                 case 0x142:
  1534.                     com.Name = "ReleaseCamera";
  1535.                     break;
  1536.                 case 0x143:
  1537.                     com.Name = "MoveCamera(143)";
  1538.                     com.parameters.Add(reader.ReadUInt16()); //Elevation
  1539.                     com.parameters.Add(reader.ReadUInt16()); //Rotation
  1540.                     com.parameters.Add(reader.ReadUInt32()); //Zoom
  1541.                     com.parameters.Add(reader.ReadUInt32());
  1542.                     com.parameters.Add(reader.ReadUInt32());
  1543.                     com.parameters.Add(reader.ReadUInt32());
  1544.                     com.parameters.Add(reader.ReadUInt16());
  1545.                     break;
  1546.                 case 0x144:
  1547.                     com.Name = "144";
  1548.                     com.parameters.Add(reader.ReadUInt16()); //Elevation
  1549.                     break;
  1550.                 case 0x145:
  1551.                     com.Name = "EndCameraEvent";
  1552.                     break;
  1553.                 case 0x146:
  1554.                     com.Name = "146";
  1555.                     break;
  1556.                 case 0x147:
  1557.                     com.Name = "ResetCamera";
  1558.                     com.parameters.Add(reader.ReadUInt16());
  1559.                     com.parameters.Add(reader.ReadUInt16());
  1560.                     com.parameters.Add(reader.ReadUInt16());
  1561.                     com.parameters.Add(reader.ReadUInt16());
  1562.                     com.parameters.Add(reader.ReadUInt16());
  1563.                     break;
  1564.                 case 0x148:
  1565.                     com.Name = "BumpingCamera";
  1566.                     com.parameters.Add(reader.ReadUInt16()); //Intensità X
  1567.                     com.parameters.Add(reader.ReadUInt16()); //Intensità Y
  1568.                     com.parameters.Add(reader.ReadUInt16()); //Speed
  1569.                     com.parameters.Add(reader.ReadUInt16()); //Degradation
  1570.                     com.parameters.Add(reader.ReadUInt16()); //Changing Speed (From Bumping X to Y)
  1571.                     com.parameters.Add(reader.ReadUInt16());
  1572.                     com.parameters.Add(reader.ReadUInt16());
  1573.                     com.parameters.Add(reader.ReadUInt16());
  1574.                     break;
  1575.                 case 0x149:
  1576.                     com.Name = "149";
  1577.                     com.parameters.Add(reader.ReadUInt16());
  1578.                     com.parameters.Add(reader.ReadUInt16());
  1579.                     break;
  1580.                 case 0x14A:
  1581.                     com.Name = "CallEnd";
  1582.                     break;
  1583.                 case 0x14B:
  1584.                     com.Name = "CallStart";
  1585.                     break;
  1586.                 case 0x14D:
  1587.                     com.Name = "14D";
  1588.                     com.parameters.Add(reader.ReadUInt16());
  1589.                     com.parameters.Add(reader.ReadUInt16());
  1590.                     break;
  1591.                 case 0x14E:
  1592.                     com.Name = "ChooseInterestingItem";
  1593.                     com.parameters.Add(reader.ReadUInt16());
  1594.                     com.parameters.Add(reader.ReadUInt16());
  1595.                     com.parameters.Add(reader.ReadUInt16());
  1596.                     break;
  1597.                 case 0x14F:
  1598.                     com.Name = "CallPcFunction";
  1599.                     com.parameters.Add(reader.ReadUInt16());
  1600.                     com.parameters.Add(reader.ReadUInt16());
  1601.                     break;
  1602.                 case 0x150:
  1603.                     com.Name = "150";
  1604.                     com.parameters.Add(reader.ReadUInt16());
  1605.                     break;
  1606.                 case 0x151:
  1607.                     com.Name = "ShowDiploma";
  1608.                     com.parameters.Add(reader.ReadUInt16());
  1609.                     com.parameters.Add(reader.ReadUInt16());
  1610.                     break;
  1611.                 case 0x152:
  1612.                     com.Name = "152";
  1613.                     break;
  1614.                 case 0x153:
  1615.                     com.Name = "153";
  1616.                     com.parameters.Add(reader.ReadUInt16());
  1617.                     break;
  1618.                 case 0x154:
  1619.                     com.Name = "LibertyShipAnm";
  1620.                     com.parameters.Add(reader.ReadUInt16());
  1621.                     com.parameters.Add(reader.ReadUInt16());
  1622.                     break;
  1623.                 case 0x155:
  1624.                     com.Name = "OpenInterpokè";
  1625.                     com.parameters.Add(reader.ReadUInt16());
  1626.                     com.parameters.Add(reader.ReadUInt16());
  1627.                     break;
  1628.                 case 0x156:
  1629.                     com.Name = "156";
  1630.                     com.parameters.Add(reader.ReadUInt16());
  1631.                     break;
  1632.                 case 0x157:
  1633.                     com.Name = "157";
  1634.                     break;
  1635.                 case 0x158:
  1636.                     com.Name = "158";
  1637.                     com.parameters.Add(reader.ReadUInt16());
  1638.                     com.parameters.Add(reader.ReadUInt16());
  1639.                     break;
  1640.                 case 0x159:
  1641.                     com.Name = "159";
  1642.                     break;
  1643.                 case 0x15A:
  1644.                     com.Name = "15A";
  1645.                     com.parameters.Add(reader.ReadUInt16());
  1646.                     com.parameters.Add(reader.ReadUInt16());
  1647.                     com.parameters.Add(reader.ReadUInt16());
  1648.                     com.parameters.Add(reader.ReadUInt16());
  1649.                     break;
  1650.                 case 0x15B:
  1651.                     com.Name = "15B";
  1652.                     com.parameters.Add(reader.ReadUInt16());
  1653.                     break;
  1654.                 case 0x15C:
  1655.                     com.Name = "15C";
  1656.                     break;
  1657.                 case 0x15D:
  1658.                     com.Name = "15D";
  1659.                     com.parameters.Add(reader.ReadUInt16());
  1660.                     break;
  1661.                 case 0x15E:
  1662.                     com.Name = "15E";
  1663.                     break;
  1664.                 case 0x15F:
  1665.                     com.Name = "CheckFriend";
  1666.                     com.parameters.Add(reader.ReadUInt16());
  1667.                     break;
  1668.                 case 0x160:
  1669.                     com.Name = "160";
  1670.                     com.parameters.Add(reader.ReadUInt16());
  1671.                     break;
  1672.                 case 0x161:
  1673.                     com.Name = "161";
  1674.                     break;
  1675.                 case 0x162:
  1676.                     com.Name = "162";
  1677.                     break;
  1678.                 //case 0x163:
  1679.                 //    com.Name = "163";
  1680.                 //    com.parameters.Add(reader.ReadUInt16());
  1681.                 //    com.parameters.Add(reader.ReadByte());
  1682.                 //    break;
  1683.                 case 0x164:
  1684.                     com.Name = "164";
  1685.                     com.parameters.Add(reader.ReadUInt16());
  1686.                     com.parameters.Add(reader.ReadUInt16());
  1687.                     break;
  1688.                 case 0x165:
  1689.                     com.Name = "165";
  1690.                     com.parameters.Add(reader.ReadUInt16());
  1691.                     break;
  1692.                 case 0x166:
  1693.                     com.Name = "166";
  1694.                     break;
  1695.                 case 0x167:
  1696.                     com.Name = "StartPokèmonMusical";
  1697.                     com.parameters.Add(reader.ReadByte());
  1698.                     com.parameters.Add(reader.ReadUInt16());
  1699.                     break;
  1700.                 case 0x168:
  1701.                     com.Name = "StartDressPokèmonMusical";
  1702.                     com.parameters.Add(reader.ReadUInt16());
  1703.                     break;
  1704.                 case 0x169:
  1705.                     com.Name = "CheckPokèmonMusicalFunctions";
  1706.                     com.parameters.Add(reader.ReadByte());
  1707.                     com.parameters.Add(reader.ReadUInt16());
  1708.                     com.parameters.Add(reader.ReadUInt16());
  1709.                     break;
  1710.                 case 0x16A:
  1711.                     com.Name = "StoreStatusPokèmonMusical";
  1712.                     com.parameters.Add(reader.ReadByte());
  1713.                     com.parameters.Add(reader.ReadUInt16());
  1714.                     com.parameters.Add(reader.ReadUInt16());
  1715.                     break;
  1716.                 case 0x16B:
  1717.                     com.Name = "PokèmonMenuMusicalFunctions";
  1718.                     com.parameters.Add(reader.ReadUInt16());
  1719.                     com.parameters.Add(reader.ReadUInt16());
  1720.                     com.parameters.Add(reader.ReadUInt16());
  1721.                     com.parameters.Add(reader.ReadUInt16());
  1722.                     break;
  1723.                 case 0x16C:
  1724.                     com.Name = "16C";
  1725.                     com.parameters.Add(reader.ReadUInt16());
  1726.                     break;
  1727.                 case 0x16D:
  1728.                     com.Name = "16D";
  1729.                     com.parameters.Add(reader.ReadUInt16());
  1730.                     break;
  1731.                 case 0x16E:
  1732.                     com.Name = "ChoosePokèmonMusical";
  1733.                     com.parameters.Add(reader.ReadUInt16());
  1734.                     com.parameters.Add(reader.ReadUInt16());
  1735.                     break;
  1736.                 case 0x16F:
  1737.                     com.Name = "16F";
  1738.                     break;
  1739.                 case 0x170:
  1740.                     com.Name = "170";
  1741.                     com.parameters.Add(reader.ReadUInt16());
  1742.                     break;
  1743.                 case 0x171:
  1744.                     com.Name = "171";
  1745.                     break;
  1746.                 case 0x172:
  1747.                     com.Name = "172";
  1748.                     com.parameters.Add(reader.ReadUInt16());
  1749.                     break;
  1750.                 case 0x173:
  1751.                     com.Name = "173";
  1752.                     com.parameters.Add(reader.ReadUInt16());
  1753.                     break;
  1754.                 case 0x174:
  1755.                     com.Name = "174";
  1756.                     com.parameters.Add(reader.ReadUInt16()); //Dex
  1757.                     com.parameters.Add(reader.ReadUInt16()); //Level
  1758.                     com.parameters.Add(reader.ReadUInt16()); //Unk
  1759.                     break;
  1760.                 case 0x175:
  1761.                     com.Name = "175";
  1762.                     com.parameters.Add(reader.ReadUInt16());
  1763.                     break;
  1764.                 case 0x176:
  1765.                     com.Name = "176";
  1766.                     com.parameters.Add(reader.ReadUInt16());
  1767.                     if (scriptType == Constants.BW2SCRIPT)
  1768.                         com.parameters.Add(reader.ReadUInt16());
  1769.                     break;
  1770.                 case 0x177:
  1771.                     com.Name = "177";
  1772.                     if (scriptType == Constants.BW2SCRIPT)
  1773.                         com.parameters.Add(reader.ReadUInt16());
  1774.                     break;
  1775.                 case 0x178:
  1776.                     com.Name = "WildPokèmonBattle";         // 364 0=captured, might output 1 & 2 for something else
  1777.                     com.parameters.Add(reader.ReadUInt16()); //variable to store result to
  1778.                     com.parameters.Add(reader.ReadUInt16());
  1779.                     com.parameters.Add(reader.ReadUInt16());
  1780.                     break;
  1781.                 case 0x179:
  1782.                     com.Name = "EndWildBattle";
  1783.                     break;
  1784.                 case 0x17A:
  1785.                     com.Name = "LooseWildBattle";
  1786.                     break;
  1787.                 case 0x17B:
  1788.                     com.Name = "StoreWildBattleResult";
  1789.                     com.parameters.Add(reader.ReadUInt16());
  1790.                     break;
  1791.                 case 0x17C:
  1792.                     com.Name = "StoreWildBattlePokèmonStatus";
  1793.                     com.parameters.Add(reader.ReadUInt16());
  1794.                     break;
  1795.                 case 0x17D:
  1796.                     com.Name = "17D";
  1797.                     break;
  1798.                 case 0x17E:
  1799.                     com.Name = "17E";
  1800.                     break;
  1801.                 case 0x17F:
  1802.                     com.Name = "17F";
  1803.                     com.parameters.Add(reader.ReadUInt16());
  1804.                     com.parameters.Add(reader.ReadUInt16());
  1805.                     break;
  1806.                 case 0x180:
  1807.                     com.Name = "NimbasaGymRailAnimation";
  1808.                     com.parameters.Add(reader.ReadUInt16());
  1809.                     break;
  1810.                 case 0x181:
  1811.                     com.Name = "181";
  1812.                     com.parameters.Add(reader.ReadUInt16());
  1813.                     break;
  1814.                 case 0x182:
  1815.                     com.Name = "182";
  1816.                     com.parameters.Add(reader.ReadUInt16());
  1817.                     break;
  1818.                 case 0x185:
  1819.                     com.Name = "185";
  1820.                     com.parameters.Add(reader.ReadUInt16());
  1821.                     break;
  1822.                 case 0x186:
  1823.                     com.Name = "186";
  1824.                     com.parameters.Add(reader.ReadUInt16());
  1825.                     break;
  1826.                 case 0x187:
  1827.                     com.Name = "187";
  1828.                     com.parameters.Add(reader.ReadUInt16());
  1829.                     break;
  1830.                 case 0x188:
  1831.                     com.Name = "188";
  1832.                     com.parameters.Add(reader.ReadUInt16());
  1833.                     break;
  1834.                 case 0x189:
  1835.                     com.Name = "189";
  1836.                     com.parameters.Add(reader.ReadUInt16());
  1837.                     break;
  1838.                 case 0x18A:
  1839.                     com.Name = "18A";
  1840.                     com.parameters.Add(reader.ReadUInt16());
  1841.                     break;
  1842.                 case 0x18B:
  1843.                     com.Name = "18B";
  1844.                     com.parameters.Add(reader.ReadUInt16());
  1845.                     break;
  1846.                 case 0x18C:
  1847.                     com.Name = "18C";
  1848.                     com.parameters.Add(reader.ReadUInt16());
  1849.                     break;
  1850.                 case 0x18D:
  1851.                     com.Name = "18D";
  1852.                     com.parameters.Add(reader.ReadUInt16());
  1853.                     break;
  1854.                 case 0x18E:
  1855.                     com.Name = "18E";
  1856.                     com.parameters.Add(reader.ReadUInt16());
  1857.                     break;
  1858.                 case 0x18F:
  1859.                     com.parameters.Add(reader.ReadUInt16());
  1860.                     com.parameters.Add(reader.ReadUInt16());
  1861.                     com.parameters.Add(reader.ReadUInt16());
  1862.                     com.parameters.Add(reader.ReadUInt16());
  1863.                     com.parameters.Add(reader.ReadUInt16());
  1864.                     com.parameters.Add(reader.ReadUInt16());
  1865.                     com.parameters.Add(reader.ReadUInt16());
  1866.                     com.parameters.Add(reader.ReadUInt16());
  1867.                     break;
  1868.                 case 0x190:
  1869.                     com.Name = "DriftGymLiftAnmSecondRoom";
  1870.                     com.parameters.Add(reader.ReadUInt16());
  1871.                     break;
  1872.                 case 0x191:
  1873.                     com.Name = "191";
  1874.                     com.parameters.Add(reader.ReadUInt16());
  1875.                     break;
  1876.                 case 0x192:
  1877.                     com.Name = "DriftGymLiftAnmFirstRoom";
  1878.                     com.parameters.Add(reader.ReadUInt16());
  1879.                     break;
  1880.                 case 0x193:
  1881.                     com.Name = "193";
  1882.                     com.parameters.Add(reader.ReadUInt16());
  1883.                     break;
  1884.                 case 0x194:
  1885.                     com.Name = "194";
  1886.                     com.parameters.Add(reader.ReadUInt16());
  1887.                     break;
  1888.                 case 0x196:
  1889.                     com.Name = "196";
  1890.                     break;
  1891.                 case 0x197:
  1892.                     com.Name = "197";
  1893.                     com.parameters.Add(reader.ReadUInt16());
  1894.                     com.parameters.Add(reader.ReadUInt16());
  1895.                     break;
  1896.                 case 0x198:
  1897.                     com.Name = "198";
  1898.                     com.parameters.Add(reader.ReadUInt16());
  1899.                     break;
  1900.                 case 0x199:
  1901.                     com.Name = "199";
  1902.                     com.parameters.Add(reader.ReadUInt16());
  1903.                     break;
  1904.                 case 0x19A:
  1905.                     com.Name = "19A";
  1906.                     com.parameters.Add(reader.ReadUInt16());
  1907.                     com.parameters.Add(reader.ReadUInt16());
  1908.                     break;
  1909.                 case 0x19B:
  1910.                     com.Name = "SetStatusCG";
  1911.                     com.parameters.Add(reader.ReadUInt16());
  1912.                     break;
  1913.                 case 0x19C:
  1914.                     com.parameters.Add(reader.ReadUInt16());
  1915.                     break;
  1916.                 case 0x19D:
  1917.                     com.Name = "19D";
  1918.                     break;
  1919.                 case 0x19E:
  1920.                     com.Name = "ShowCG";
  1921.                     com.parameters.Add(reader.ReadUInt16());
  1922.                     break;
  1923.                 case 0x19F:
  1924.                     com.Name = "CallScreenAnimation";
  1925.                     com.parameters.Add(reader.ReadUInt16()); //AnimationId
  1926.                     break;
  1927.                 case 0x1A0:
  1928.                     com.Name = "1A0";
  1929.                     com.parameters.Add(reader.ReadUInt16());
  1930.                     break;
  1931.                 case 0x1A1:
  1932.                     com.Name = "OpenXtransciever(1A1)";
  1933.                     com.parameters.Add(reader.ReadUInt16());
  1934.                     break;
  1935.                 case 0x1A2:
  1936.                     com.Name = "1A2";
  1937.                     break;
  1938.                 case 0x1A3:
  1939.                     com.Name = "FlashBlackInstant";
  1940.                     break;
  1941.                 case 0x1A4:
  1942.                     com.Name = "1A4";
  1943.                     com.parameters.Add(reader.ReadUInt16());
  1944.                     break;
  1945.                 case 0x1A5:
  1946.                     com.Name = "1A5";
  1947.                     break;
  1948.                 case 0x1A6:
  1949.                     com.Name = "1A6";
  1950.                     com.parameters.Add(reader.ReadUInt16());
  1951.                     com.parameters.Add(reader.ReadUInt16());
  1952.                     break;
  1953.                 case 0x1A7:
  1954.                     com.Name = "1A7";
  1955.                     com.parameters.Add(reader.ReadUInt16());
  1956.                     com.parameters.Add(reader.ReadUInt16());
  1957.                     break;
  1958.                 case 0x1A8:
  1959.                     com.Name = "1A8";
  1960.                     break;
  1961.                 case 0x1A9:
  1962.                     com.Name = "1A9";
  1963.                     com.parameters.Add(reader.ReadUInt16());
  1964.                     com.parameters.Add(reader.ReadUInt16());
  1965.                     com.parameters.Add(reader.ReadUInt16());
  1966.                     com.parameters.Add(reader.ReadUInt16());
  1967.                     break;
  1968.                 case 0x1AA:
  1969.                     com.Name = "1AA";
  1970.                     com.parameters.Add(reader.ReadUInt16());
  1971.                     com.parameters.Add(reader.ReadUInt16());
  1972.                     com.parameters.Add(reader.ReadUInt16());
  1973.                     com.parameters.Add(reader.ReadUInt16());
  1974.                     break;
  1975.                 case 0x1AB:
  1976.                     com.Name = "FadeFromBlack";
  1977.                     break;
  1978.                 case 0x1AC:
  1979.                     com.Name = "FadeIntoBlack";
  1980.                     break;
  1981.                 case 0x1AD:
  1982.                     com.Name = "FadeFromWhite";
  1983.                     break;
  1984.                 case 0x1AE:
  1985.                     com.Name = "FadeIntoWhite";
  1986.                     break;
  1987.                 case 0x1AF:
  1988.                     com.Name = "1AF";
  1989.                     break;
  1990.                 case 0x1B1:
  1991.                     com.Name = "ScreenFunction";
  1992.                     break;
  1993.                 case 0x1B2:
  1994.                     com.Name = "1B2";
  1995.                     break;
  1996.                 case 0x1B4:
  1997.                     com.Name = "1B4";
  1998.                     break;
  1999.                 case 0x1B5:
  2000.                     com.Name = "1B5";
  2001.                     break;
  2002.                 case 0x1B6:
  2003.                     com.Name = "1B6";
  2004.                     break;
  2005.                 case 0x1B9:
  2006.                     com.parameters.Add(reader.ReadUInt16());
  2007.                     com.parameters.Add(reader.ReadUInt16());
  2008.                     break;
  2009.                 case 0x1BA:
  2010.                     com.Name = "1BA";
  2011.                     com.parameters.Add(reader.ReadUInt16());
  2012.                     com.parameters.Add(reader.ReadUInt16());
  2013.                     break;
  2014.                 case 0x1BB:
  2015.                     com.Name = "1BB";
  2016.                     break;
  2017.                 case 0x1BC:
  2018.                     com.Name = "1BC";
  2019.                     com.parameters.Add(reader.ReadUInt16());
  2020.                     break;
  2021.                 case 0x1BD:
  2022.                     com.Name = "1BD";
  2023.                     com.parameters.Add(reader.ReadUInt16());
  2024.                     com.parameters.Add(reader.ReadUInt16());
  2025.                     break;
  2026.                 case 0x1BE:
  2027.                     com.Name = "TradePokèmon";
  2028.                     com.parameters.Add(reader.ReadUInt16());
  2029.                     com.parameters.Add(reader.ReadUInt16());
  2030.                     break;
  2031.                 case 0x1BF:
  2032.                     com.Name = "CompareChosenPokemon";
  2033.                     com.parameters.Add(reader.ReadUInt16());//RV = True if is equal
  2034.                     com.parameters.Add(reader.ReadUInt16());//Id chosen Pokèmon
  2035.                     com.parameters.Add(reader.ReadUInt16());//Id requested Pokèmon
  2036.                     break;
  2037.                 case 0x1C0:
  2038.                     com.Name = "1C0";
  2039.                     break;
  2040.                 case 0x1C1:
  2041.                     com.Name = "1C1";
  2042.                     com.parameters.Add(reader.ReadByte());
  2043.                     com.parameters.Add(reader.ReadUInt16());
  2044.                     break;
  2045.                 case 0x1C2:
  2046.                     com.Name = "StartEventBC";
  2047.                     break;
  2048.                 case 0x1C3:
  2049.                     com.Name = "EndEventBC";
  2050.                     break;
  2051.                 case 0x1C4:
  2052.                     com.Name = "StoreTrainerID";
  2053.                     com.parameters.Add(reader.ReadUInt16());
  2054.                     com.parameters.Add(reader.ReadUInt16());
  2055.                     break;
  2056.                 case 0x1C5:
  2057.                     com.Name = "1C5";
  2058.                     com.parameters.Add(reader.ReadUInt16());
  2059.                     break;
  2060.                 case 0x1C6:
  2061.                     com.Name = "StorePokemonCaughtWF";
  2062.                     com.parameters.Add(reader.ReadUInt16()); //True if is Pokèmon searched
  2063.                     com.parameters.Add(reader.ReadUInt16()); //True if is caught the same day
  2064.                     com.parameters.Add(reader.ReadUInt16());
  2065.                     break;
  2066.                 case 0x1C7:
  2067.                     com.Name = "1C7";
  2068.                     break;
  2069.                 case 0x1C8:
  2070.                     com.Name = "1C8";
  2071.                     break;
  2072.                 case 0x1C9:
  2073.                     com.Name = "StoreVarMessage(1C9)";
  2074.                     com.parameters.Add(reader.ReadUInt16()); //Variable as Container
  2075.                     com.parameters.Add(reader.ReadUInt16()); //Message Id
  2076.                     break;
  2077.                 case 0x1CB:
  2078.                     com.Name = "1CB";
  2079.                     com.parameters.Add(reader.ReadUInt16());
  2080.                     com.parameters.Add(reader.ReadUInt16());
  2081.                     break;
  2082.                 case 0x1CC:
  2083.                     com.Name = "1CC";
  2084.                     break;
  2085.                 case 0x1CD:
  2086.                     com.parameters.Add(reader.ReadUInt16());
  2087.                     break;
  2088.                 case 0x1CE:
  2089.                     com.Name = "CheckPokèdexStatus";
  2090.                     com.parameters.Add(reader.ReadUInt16());
  2091.                     com.parameters.Add(reader.ReadUInt16());
  2092.                     break;
  2093.                 case 0x1CF:
  2094.                     com.Name = "StorePokèdexCaught";
  2095.                     com.parameters.Add(reader.ReadUInt16());
  2096.                     com.parameters.Add(reader.ReadUInt16());
  2097.                     com.parameters.Add(reader.ReadUInt16());
  2098.                     break;
  2099.                 case 0x1D0:
  2100.                     com.Name = "1D0";
  2101.                     break;
  2102.                 case 0x1D1:
  2103.                     com.Name = "1D1";
  2104.                     com.parameters.Add(reader.ReadUInt16());
  2105.                     break;
  2106.                 case 0x1D2:
  2107.                     com.Name = "1D2";
  2108.                     break;
  2109.                 case 0x1D3:
  2110.                     com.parameters.Add(reader.ReadUInt16());
  2111.                     com.parameters.Add(reader.ReadUInt16());
  2112.                     com.parameters.Add(reader.ReadUInt16());
  2113.                     break;
  2114.                 case 0x1D4:
  2115.                     break;
  2116.                 case 0x1D5:
  2117.                     com.Name = "1D5";
  2118.                     break;
  2119.                 case 0x1D6:
  2120.                     com.Name = "AffinityCheck";
  2121.                     com.parameters.Add(reader.ReadUInt16());
  2122.                     break;
  2123.                 case 0x1D7:
  2124.                     com.Name = "SetVarAffinityCheck";
  2125.                     com.parameters.Add(reader.ReadUInt16());
  2126.                     break;
  2127.                 case 0x1D8:
  2128.                     com.parameters.Add(reader.ReadUInt16());
  2129.                     com.parameters.Add(reader.ReadUInt16());
  2130.                     break;
  2131.                 case 0x1D9:
  2132.                     com.Name = "1D9";
  2133.                     com.parameters.Add(reader.ReadUInt16());
  2134.                     if (scriptType == Constants.BW2SCRIPT)
  2135.                         com.parameters.Add(reader.ReadUInt16());
  2136.                     break;
  2137.                 case 0x1DA:
  2138.                     com.Name = "1DA";
  2139.                     com.parameters.Add(reader.ReadUInt16());
  2140.                     com.parameters.Add(reader.ReadUInt16());
  2141.                     break;
  2142.                 case 0x1DB:
  2143.                     com.Name = "1DB";
  2144.                     com.parameters.Add(reader.ReadUInt16());
  2145.                     break;
  2146.                 case 0x1DC:
  2147.                     com.Name = "1DC";
  2148.                     com.parameters.Add(reader.ReadUInt16());
  2149.                     com.parameters.Add(reader.ReadUInt16());
  2150.                     break;
  2151.                 case 0x1DD:
  2152.                     com.Name = "1DD";
  2153.                     com.parameters.Add(reader.ReadUInt16());
  2154.                     com.parameters.Add(reader.ReadUInt16());
  2155.                     break;
  2156.                 case 0x1DE:
  2157.                     com.Name = "StoreDataUnity";
  2158.                     com.parameters.Add(reader.ReadUInt16());
  2159.                     com.parameters.Add(reader.ReadUInt16());
  2160.                     break;
  2161.                 case 0x1DF:
  2162.                     com.Name = "1DF";
  2163.                     com.parameters.Add(reader.ReadUInt16());
  2164.                     com.parameters.Add(reader.ReadUInt16());
  2165.                     com.parameters.Add(reader.ReadUInt16());
  2166.                     break;
  2167.                 case 0x1E0:
  2168.                     com.Name = "ChooseUnityFloor";
  2169.                     com.parameters.Add(reader.ReadUInt16());
  2170.                     com.parameters.Add(reader.ReadUInt16());
  2171.                     com.parameters.Add(reader.ReadUInt16());
  2172.                     com.parameters.Add(reader.ReadUInt16());
  2173.                     break;
  2174.                 case 0x1E1:
  2175.                     com.Name = "StoreTrainerUnity";
  2176.                     com.parameters.Add(reader.ReadUInt16());
  2177.                     break;
  2178.                 case 0x1E2:
  2179.                     com.Name = "1E2";
  2180.                     com.parameters.Add(reader.ReadUInt16());
  2181.                     break;
  2182.                 case 0x1E3:
  2183.                     com.Name = "StoreUnityActivities";
  2184.                     com.parameters.Add(reader.ReadUInt16());
  2185.                     break;
  2186.                 case 0x1E4:
  2187.                     com.Name = "StoreCanTeachDragonMove";
  2188.                     com.parameters.Add(reader.ReadUInt16());
  2189.                     com.parameters.Add(reader.ReadUInt16());
  2190.                     break;
  2191.                 case 0x1E5:
  2192.                     com.Name = "StorePokèmonStatusDragonMove";
  2193.                     com.parameters.Add(reader.ReadUInt16());
  2194.                     com.parameters.Add(reader.ReadUInt16());
  2195.                     com.parameters.Add(reader.ReadUInt16());
  2196.                     break;
  2197.                 case 0x1E6:
  2198.                     com.Name = "1E6";
  2199.                     com.parameters.Add(reader.ReadUInt16());
  2200.                     com.parameters.Add(reader.ReadUInt16());
  2201.                     com.parameters.Add(reader.ReadUInt16());
  2202.                     break;
  2203.                 case 0x1E7:
  2204.                     com.Name = "StoreChosenPokèmonDragonMove";
  2205.                     com.parameters.Add(reader.ReadUInt16());
  2206.                     com.parameters.Add(reader.ReadUInt16());
  2207.                     com.parameters.Add(reader.ReadUInt16());
  2208.                     break;
  2209.                 case 0x1E8:
  2210.                     com.Name = "CheckRememberMove";
  2211.                     com.parameters.Add(reader.ReadUInt16());
  2212.                     com.parameters.Add(reader.ReadUInt16());
  2213.                     break;
  2214.                 case 0x1E9:
  2215.                     com.Name = "StoreRememberMove";
  2216.                     com.parameters.Add(reader.ReadUInt16());
  2217.                     com.parameters.Add(reader.ReadUInt16());
  2218.                     break;
  2219.                 case 0x1EA:
  2220.                     com.Name = "1EA";
  2221.                     com.parameters.Add(reader.ReadUInt16());
  2222.                     com.parameters.Add(reader.ReadUInt16());
  2223.                     com.parameters.Add(reader.ReadUInt16());
  2224.                     com.parameters.Add(reader.ReadUInt16());
  2225.                     break;
  2226.                 case 0x1EB:
  2227.                     com.Name = "1EB";
  2228.                     com.parameters.Add(reader.ReadUInt16());
  2229.                     com.parameters.Add(reader.ReadUInt16());
  2230.                     com.parameters.Add(reader.ReadUInt16());
  2231.                     com.parameters.Add(reader.ReadUInt16());
  2232.                     break;
  2233.                 case 0x1EC:
  2234.                     com.Name = "SwitchOwPosition";
  2235.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  2236.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  2237.                     com.parameters.Add(reader.ReadUInt16()); //X Coordinate
  2238.                     com.parameters.Add(reader.ReadUInt16()); //Y Coordinate
  2239.                     com.parameters.Add(reader.ReadUInt16()); //Z Coordinate
  2240.                     break;
  2241.                 case 0x1ED:
  2242.                     com.Name = "DoublePhraseBoxInput";
  2243.                     com.parameters.Add(reader.ReadUInt16());
  2244.                     com.parameters.Add(reader.ReadUInt16());
  2245.                     com.parameters.Add(reader.ReadUInt16());
  2246.                     com.parameters.Add(reader.ReadUInt16());
  2247.                     break;
  2248.                 case 0x1EE:
  2249.                     com.Name = "1EE";
  2250.                     com.parameters.Add(reader.ReadUInt16());
  2251.                     com.parameters.Add(reader.ReadUInt16());
  2252.                     break;
  2253.                 case 0x1EF:
  2254.                     com.parameters.Add(reader.ReadUInt16());
  2255.                     com.parameters.Add(reader.ReadUInt16());
  2256.                     break;
  2257.                 case 0x1F0:
  2258.                     com.Name = "HMEffect";
  2259.                     com.parameters.Add(reader.ReadUInt16());
  2260.                     com.parameters.Add(reader.ReadUInt16());
  2261.                     break;
  2262.                 case 0x1F1:
  2263.                     com.Name = "1F1";
  2264.                     com.parameters.Add(reader.ReadUInt16());
  2265.                     com.parameters.Add(reader.ReadUInt16());
  2266.                     break;
  2267.                 case 0x1F2:
  2268.                     com.Name = "1F2";
  2269.                     break;
  2270.                 case 0x1F3:
  2271.                     com.Name = "CreateStadiumTrainer?";
  2272.                     com.parameters.Add(reader.ReadUInt16());
  2273.                     com.parameters.Add(reader.ReadUInt16());
  2274.                     com.parameters.Add(reader.ReadUInt16());
  2275.                     com.parameters.Add(reader.ReadUInt16());
  2276.                     break;
  2277.                 case 0x1F4:
  2278.                     com.Name = "StartStadiumFunction?";
  2279.                     break;
  2280.                 case 0x1F5:
  2281.                     com.Name = "EndStadiumFunction?";
  2282.                     break;
  2283.                 case 0x1F6:
  2284.                     com.Name = "CreateStadiumOverworld?";
  2285.                     com.parameters.Add(reader.ReadUInt16()); // 0
  2286.                     com.parameters.Add(reader.ReadUInt16()); // 0
  2287.                     com.parameters.Add(reader.ReadUInt16()); // 0
  2288.                     break;
  2289.                 case 0x1F7:
  2290.                     com.Name = "1F7";
  2291.                     com.parameters.Add(reader.ReadUInt16());
  2292.                     com.parameters.Add(reader.ReadUInt16());
  2293.                     com.parameters.Add(reader.ReadUInt16());
  2294.                     com.parameters.Add(reader.ReadUInt16());
  2295.                     com.parameters.Add(reader.ReadUInt16());
  2296.                     com.parameters.Add(reader.ReadUInt16());
  2297.                     break;
  2298.                 case 0x1F8:
  2299.                     com.Name = "SetStadiumBusy";
  2300.                     break;
  2301.                 case 0x1F9:
  2302.                     com.Name = "StartBattleExam";
  2303.                     break;
  2304.                 case 0x1FA:
  2305.                     com.Name = "SetBattleExamTrainerNumber";
  2306.                     com.parameters.Add(reader.ReadUInt16()); //Trainer Number
  2307.                     break;
  2308.                 case 0x1FB:
  2309.                     com.Name = "SetBattleExamType";
  2310.                     com.parameters.Add(reader.ReadUInt16()); //Type
  2311.                     break;
  2312.                 case 0x1FC:
  2313.                     com.Name = "StoreBattleExamModality";
  2314.                     com.parameters.Add(reader.ReadUInt16());
  2315.                     com.parameters.Add(reader.ReadUInt16());
  2316.                     com.parameters.Add(reader.ReadUInt16());
  2317.                     break;
  2318.                 case 0x1FD:
  2319.                     com.Name = "StoreBattleExamSprite";
  2320.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  2321.                     com.parameters.Add(reader.ReadUInt16()); //Sprite(ret)
  2322.                     break;
  2323.                 case 0x1FE:
  2324.                     com.Name = "ExamBattle";
  2325.                     com.parameters.Add(reader.ReadUInt16());
  2326.                     com.parameters.Add(reader.ReadUInt16()); //NPC Id
  2327.                     break;
  2328.                 case 0x1FF:
  2329.                     com.Name = "EndExamBattle";
  2330.                     break;
  2331.                 case 0x200:
  2332.                     com.Name = "CheckBattleExamStarted";
  2333.                     com.parameters.Add(reader.ReadUInt16());
  2334.                     break;
  2335.                 case 0x202:
  2336.                     com.Name = "StoreBattleExamStarNumber";
  2337.                     com.parameters.Add(reader.ReadUInt16());
  2338.                     break;
  2339.                 case 0x203:
  2340.                     com.Name = "CheckBattleExamAvailable";
  2341.                     com.parameters.Add(reader.ReadUInt16());
  2342.                     break;
  2343.                 case 0x204:
  2344.                     com.Name = "StoreBattleExamLevel";
  2345.                     com.parameters.Add(reader.ReadUInt16());
  2346.                     com.parameters.Add(reader.ReadUInt16());
  2347.                     break;
  2348.                 case 0x205:
  2349.                     com.Name = "StoreBattleExamType";
  2350.                     com.parameters.Add(reader.ReadUInt16());
  2351.                     break;
  2352.                 case 0x206:
  2353.                     com.Name = "SavingBookAnimation";
  2354.                     com.parameters.Add(reader.ReadUInt16());
  2355.                     break;
  2356.                 case 0x207:
  2357.                     com.Name = "ShowBattleExamResult";
  2358.                     com.parameters.Add(reader.ReadUInt16());
  2359.                     com.parameters.Add(reader.ReadUInt16());
  2360.                     break;
  2361.                 case 0x208:
  2362.                     com.Name = "StoreBattleExamWon";
  2363.                     com.parameters.Add(reader.ReadUInt16());
  2364.                     break;
  2365.                 case 0x209:
  2366.                     com.Name = "DreamWorldFunction";
  2367.                     com.parameters.Add(reader.ReadUInt16());
  2368.                     com.parameters.Add(reader.ReadUInt16());
  2369.                     com.parameters.Add(reader.ReadUInt16());
  2370.                     com.parameters.Add(reader.ReadUInt16());
  2371.                     break;
  2372.                 case 0x20A:
  2373.                     com.Name = "DreamWorldFunction2";
  2374.                     com.parameters.Add(reader.ReadUInt16());
  2375.                     com.parameters.Add(reader.ReadUInt16());
  2376.                     com.parameters.Add(reader.ReadUInt16());
  2377.                     com.parameters.Add(reader.ReadUInt16());
  2378.                     break;
  2379.                 case 0x20B:
  2380.                     com.Name = "ShowDreamWorldFurniture";
  2381.                     com.parameters.Add(reader.ReadUInt16());
  2382.                     com.parameters.Add(reader.ReadUInt16());
  2383.                     break;
  2384.                 case 0x20C:
  2385.                     com.Name = "CheckRelocatorPassword";
  2386.                     com.parameters.Add(reader.ReadUInt16());
  2387.                     com.parameters.Add(reader.ReadUInt16());
  2388.                     com.parameters.Add(reader.ReadUInt16());
  2389.                     break;
  2390.                 case 0x20D:
  2391.                     com.Name = "20D";
  2392.                     com.parameters.Add(reader.ReadUInt16());
  2393.                     com.parameters.Add(reader.ReadUInt16());
  2394.                     com.parameters.Add(reader.ReadUInt16());
  2395.                     com.parameters.Add(reader.ReadUInt16());
  2396.                     break;
  2397.                 case 0x20E:
  2398.                     com.Name = "CheckItemInterestingBag";
  2399.                     com.parameters.Add(reader.ReadUInt16());
  2400.                     com.parameters.Add(reader.ReadUInt16());
  2401.                     break;
  2402.                 case 0x20F:
  2403.                     com.Name = "CompareInterestingItem";
  2404.                     com.parameters.Add(reader.ReadUInt16());
  2405.                     com.parameters.Add(reader.ReadUInt16());
  2406.                     com.parameters.Add(reader.ReadUInt16());
  2407.                     break;
  2408.                 case 0x210:
  2409.                     com.Name = "210";
  2410.                     com.parameters.Add(reader.ReadUInt16());
  2411.                     com.parameters.Add(reader.ReadUInt16());
  2412.                     com.parameters.Add(reader.ReadUInt16());
  2413.                     com.parameters.Add(reader.ReadUInt16());
  2414.                     break;
  2415.                 case 0x211:
  2416.                     com.Name = "211";
  2417.                     break;
  2418.                 case 0x212:
  2419.                     com.Name = "StoreSurveyActive";
  2420.                     com.parameters.Add(reader.ReadUInt16()); //Survey Id
  2421.                     break;
  2422.                 case 0x213:
  2423.                     com.Name = "213";
  2424.                     com.parameters.Add(reader.ReadUInt16()); //(ret)
  2425.                     com.parameters.Add(reader.ReadUInt16()); //0
  2426.                     com.parameters.Add(reader.ReadUInt16()); //0
  2427.                     break;
  2428.                 case 0x214:
  2429.                     com.Name = "214";
  2430.                     com.parameters.Add(reader.ReadUInt16()); //
  2431.                     com.parameters.Add(reader.ReadUInt16()); //0
  2432.                     break;
  2433.                 case 0x215:
  2434.                     com.Name = "215";
  2435.                     com.parameters.Add(reader.ReadUInt16());
  2436.                     com.parameters.Add(reader.ReadUInt16()); //(ret)
  2437.                     break;
  2438.                 case 0x216:
  2439.                     com.Name = "216";
  2440.                     com.parameters.Add(reader.ReadUInt16());
  2441.                     break;
  2442.                 case 0x217:
  2443.                     com.Name = "217";
  2444.                     com.parameters.Add(reader.ReadUInt16());
  2445.                     break;
  2446.                 case 0x218:
  2447.                     com.Name = "StoreGreeting";
  2448.                     com.parameters.Add(reader.ReadUInt16());//val
  2449.                     break;
  2450.                 case 0x219:
  2451.                     com.Name = "StoreThanks";
  2452.                     com.parameters.Add(reader.ReadUInt16());//var
  2453.                     break;
  2454.                 case 0x21C:
  2455.                     com.Name = "21C";
  2456.                     com.parameters.Add(reader.ReadUInt16());//var
  2457.                     com.parameters.Add(reader.ReadUInt16());//val
  2458.                     break;
  2459.                 case 0x21D:
  2460.                     com.Name = "21D";
  2461.                     break;
  2462.                 case 0x21E:
  2463.                     com.Name = "StoreSurveyDone";
  2464.                     com.parameters.Add(reader.ReadUInt16()); //Survey Number
  2465.                     break;
  2466.                 case 0x21F:
  2467.                     com.Name = "21F";
  2468.                     break;
  2469.                 case 0x220:
  2470.                     com.Name = "CheckHavePokèmon";
  2471.                     com.parameters.Add(reader.ReadUInt16());
  2472.                     com.parameters.Add(reader.ReadUInt16());
  2473.                     com.parameters.Add(reader.ReadUInt16());
  2474.                     com.parameters.Add(reader.ReadUInt16());
  2475.                     break;
  2476.                 case 0x221:
  2477.                     com.Name = "221";
  2478.                     com.parameters.Add(reader.ReadUInt16());
  2479.                     com.parameters.Add(reader.ReadUInt16());
  2480.                     com.parameters.Add(reader.ReadUInt16());
  2481.                     com.parameters.Add(reader.ReadUInt16());
  2482.                     com.parameters.Add(reader.ReadUInt16());
  2483.                     com.parameters.Add(reader.ReadUInt16());//var
  2484.                     break;
  2485.                 case 0x222:
  2486.                     com.Name = "222";
  2487.                     com.parameters.Add(reader.ReadUInt16());
  2488.                     com.parameters.Add(reader.ReadUInt16());
  2489.                     com.parameters.Add(reader.ReadUInt16());
  2490.                     com.parameters.Add(reader.ReadUInt16());
  2491.                     break;
  2492.                 case 0x223:
  2493.                     com.Name = "StoreHiddenPowerType";          // ex 382
  2494.                     com.parameters.Add(reader.ReadUInt16()); //Storage for result (0-17 move type)
  2495.                     nextFF = reader.ReadUInt16();
  2496.                     if (nextFF > 10)
  2497.                         reader.BaseStream.Position -= 2;
  2498.                     else
  2499.                         com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  2500.                     break;
  2501.                 case 0x224:
  2502.                     com.Name = "224";
  2503.                     com.parameters.Add(reader.ReadUInt16());//var
  2504.                     break;
  2505.                 case 0x225:
  2506.                     com.Name = "225";
  2507.                     com.parameters.Add(reader.ReadUInt16()); //Storage for result (0-17 move type)
  2508.                     com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  2509.                     com.parameters.Add(reader.ReadUInt16());
  2510.                     break;
  2511.                 case 0x226:
  2512.                     com.Name = "RotatingAnimation";
  2513.                     com.parameters.Add(reader.ReadUInt16()); //OW Id
  2514.                     break;
  2515.                 case 0x227:
  2516.                     com.Name = "227";
  2517.                     com.parameters.Add(reader.ReadUInt16());
  2518.                     com.parameters.Add(reader.ReadUInt16());
  2519.                     break;
  2520.                 case 0x228:
  2521.                     com.Name = "228";
  2522.                     com.parameters.Add(reader.ReadUInt16());
  2523.                     com.parameters.Add(reader.ReadUInt16());
  2524.                     break;
  2525.                 case 0x229:
  2526.                     com.Name = "229";
  2527.                     com.parameters.Add(reader.ReadUInt16());
  2528.                     com.parameters.Add(reader.ReadUInt16());
  2529.                     break;
  2530.                 case 0x22A:
  2531.                     com.Name = "TeleportDreamForest";
  2532.                     com.parameters.Add(reader.ReadUInt16());
  2533.                     break;
  2534.                 case 0x22B:
  2535.                     com.Name = "CheckDreamFunction";
  2536.                     com.parameters.Add(reader.ReadUInt16());
  2537.                     com.parameters.Add(reader.ReadUInt16());
  2538.                     break;
  2539.                 case 0x22C:
  2540.                     com.Name = "CheckSpacePokèmonDream";
  2541.                     com.parameters.Add(reader.ReadUInt16());
  2542.                     com.parameters.Add(reader.ReadUInt16());
  2543.                     break;
  2544.                 case 0x22D:
  2545.                     com.Name = "SetVarPokèmonDream";
  2546.                     com.parameters.Add(reader.ReadUInt16());
  2547.                     com.parameters.Add(reader.ReadUInt16());
  2548.                     break;
  2549.                 case 0x22E:
  2550.                     com.Name = "StartDreamIsle";
  2551.                     break;
  2552.                 case 0x22F:
  2553.                     com.Name = "DreamBattle";
  2554.                     com.parameters.Add(reader.ReadUInt16());
  2555.                     com.parameters.Add(reader.ReadUInt16());
  2556.                     break;
  2557.                 case 0x230:
  2558.                     com.Name = "230";
  2559.                     com.parameters.Add(reader.ReadUInt16());
  2560.                     com.parameters.Add(reader.ReadUInt16());
  2561.                     break;
  2562.                 case 0x231:
  2563.                     com.Name = "StoreFishPokèmon";
  2564.                     com.parameters.Add(reader.ReadUInt16()); // Pokèmon to catch(Ret)
  2565.                     break;
  2566.                 case 0x232:
  2567.                     com.Name = "232";
  2568.                     com.parameters.Add(reader.ReadUInt16()); // Var
  2569.                     com.parameters.Add(reader.ReadUInt16()); // Var(Ret)
  2570.                     break;
  2571.                 case 0x233:
  2572.                     com.Name = "StoreTrainerFromSeason"; //?
  2573.                     com.parameters.Add(reader.ReadUInt16()); // Season
  2574.                     com.parameters.Add(reader.ReadUInt16()); // Trainer Id
  2575.                     break;
  2576.                 case 0x234:
  2577.                     com.Name = "234";
  2578.                     com.parameters.Add(reader.ReadUInt16());
  2579.                     com.parameters.Add(reader.ReadUInt16());
  2580.                     break;
  2581.                 case 0x235:
  2582.                     com.Name = "235";
  2583.                     com.parameters.Add(reader.ReadUInt16()); //var
  2584.                     break;
  2585.                 case 0x236:
  2586.                     com.Name = "236";
  2587.                     com.parameters.Add(reader.ReadUInt16()); //var
  2588.                     com.parameters.Add(reader.ReadUInt16()); //val
  2589.                     com.parameters.Add(reader.ReadUInt16()); //val
  2590.                     com.parameters.Add(reader.ReadUInt16()); //val
  2591.                     break;
  2592.                 case 0x237:
  2593.                     com.Name = "237";
  2594.                     com.parameters.Add(reader.ReadUInt16()); //var
  2595.                     com.parameters.Add(reader.ReadUInt16()); //val
  2596.                     com.parameters.Add(reader.ReadUInt16()); //val
  2597.                     break;
  2598.                 case 0x238:
  2599.                     com.Name = "238";
  2600.                     com.parameters.Add(reader.ReadUInt16());
  2601.                     break;
  2602.                 case 0x239:
  2603.                     com.Name = "239";
  2604.                     com.parameters.Add(reader.ReadUInt16());
  2605.                     break;
  2606.                 case 0x23A:
  2607.                     com.Name = "Animation(23A)";
  2608.                     com.parameters.Add(reader.ReadUInt16());
  2609.                     com.parameters.Add(reader.ReadUInt16());
  2610.                     break;
  2611.                 case 0x23B:
  2612.                     com.Name = "CheckSendSaveCG";
  2613.                     com.parameters.Add(reader.ReadUInt16());
  2614.                     com.parameters.Add(reader.ReadUInt16()); //RV = Message Id
  2615.                     break;
  2616.                 case 0x23C:
  2617.                     com.Name = "23C";
  2618.                     break;
  2619.                 case 0x23D:
  2620.                     com.Name = "23D";
  2621.                     com.parameters.Add(reader.ReadUInt16());
  2622.                     com.parameters.Add(reader.ReadUInt16()); //RV = Message Id
  2623.                     break;
  2624.                 case 0x23E:
  2625.                     com.Name = "23E"; //Lock
  2626.                     com.parameters.Add(reader.ReadUInt16()); //var
  2627.                     com.parameters.Add(reader.ReadUInt16());
  2628.                     com.parameters.Add(reader.ReadUInt16()); //var
  2629.                     com.parameters.Add(reader.ReadUInt16()); //var
  2630.                     break;
  2631.                 case 0x23F:
  2632.                     com.Name = "23F"; //Freeze
  2633.                     break;
  2634.                 case 0x240:
  2635.                     com.Name = "240";
  2636.                     com.parameters.Add(reader.ReadUInt16());
  2637.                     break;
  2638.                 case 0x241:
  2639.                     com.Name = "241";
  2640.                     break;
  2641.                 case 0x242:
  2642.                     com.Name = "242";
  2643.                     com.parameters.Add(reader.ReadUInt16());
  2644.                     com.parameters.Add(reader.ReadUInt16());
  2645.                     break;
  2646.                 case 0x243:
  2647.                     com.Name = "SpecialMessage";
  2648.                     com.parameters.Add(reader.ReadUInt16());
  2649.                     com.parameters.Add(reader.ReadUInt16());
  2650.                     break;
  2651.                 case 0x244:
  2652.                     com.Name = "OpenHelpSystem";
  2653.                     com.parameters.Add(reader.ReadUInt16());
  2654.                     break;
  2655.                 case 0x245:
  2656.                     com.Name = "245";
  2657.                     com.parameters.Add(reader.ReadUInt16());
  2658.                     com.parameters.Add(reader.ReadUInt16());
  2659.                     break;
  2660.                 case 0x246:
  2661.                     com.Name = "246";
  2662.                     com.parameters.Add(reader.ReadUInt16());
  2663.                     break;
  2664.                 case 0x247:
  2665.                     com.Name = "Warp(247)";
  2666.                     com.parameters.Add(reader.ReadUInt16()); //Ow
  2667.                     com.parameters.Add(reader.ReadUInt16()); //X
  2668.                     com.parameters.Add(reader.ReadUInt16()); //Y
  2669.                     com.parameters.Add(reader.ReadUInt16()); //Z
  2670.                     com.parameters.Add(reader.ReadUInt16()); //Orientation
  2671.                     break;
  2672.                 case 0x248:
  2673.                     com.Name = "248";
  2674.                     com.parameters.Add(reader.ReadUInt16());
  2675.                     com.parameters.Add(reader.ReadUInt16());
  2676.                     break;
  2677.                 case 0x249:
  2678.                     com.Name = "StoreInterestingItemData";
  2679.                     com.parameters.Add(reader.ReadUInt16());
  2680.                     com.parameters.Add(reader.ReadUInt16());
  2681.                     com.parameters.Add(reader.ReadUInt16());
  2682.                     com.parameters.Add(reader.ReadUInt16());
  2683.                     break;
  2684.                 case 0x24A:
  2685.                     com.Name = "TakeInterestingItem";
  2686.                     com.parameters.Add(reader.ReadUInt16());
  2687.                     com.parameters.Add(reader.ReadUInt16());
  2688.                     break;
  2689.                 case 0x24B:
  2690.                     com.Name = "24B";
  2691.                     com.parameters.Add(reader.ReadUInt16());
  2692.                     break;
  2693.                 case 0x24C:
  2694.                     com.Name = "24C";
  2695.                     com.parameters.Add(reader.ReadUInt16());
  2696.                     break;
  2697.                 case 0x24D:
  2698.                     com.Name = "Cry(24D)";
  2699.                     com.parameters.Add(reader.ReadUInt16()); //Cry
  2700.                     com.parameters.Add(reader.ReadUInt16());
  2701.                     break;
  2702.                 case 0x24E:
  2703.                     com.Name = "24E"; //Lock
  2704.                     break;
  2705.                 case 0x24F:
  2706.                     com.Name = "24F"; //Lock
  2707.                     break;
  2708.                 case 0x250:
  2709.                     com.Name = "250"; //Freeze
  2710.                     break;
  2711.                 case 0x251:
  2712.                     com.Name = "251";
  2713.                     com.parameters.Add(reader.ReadUInt16()); //(Ret)
  2714.                     com.parameters.Add(reader.ReadUInt16()); //0
  2715.                     com.parameters.Add(reader.ReadUInt16()); //Var
  2716.                     break;
  2717.                 case 0x252:
  2718.                     com.Name = "ShowMapName";
  2719.                     break;
  2720.                 case 0x253:
  2721.                     com.Name = "ChangeMusicVolume(253)";
  2722.                     com.parameters.Add(reader.ReadUInt16()); //Volume
  2723.                     com.parameters.Add(reader.ReadUInt16());
  2724.                     break;
  2725.                 case 0x254:
  2726.                     com.Name = "254";
  2727.                     com.parameters.Add(reader.ReadUInt16()); //1 60
  2728.                     break;
  2729.                 case 0x255: //Freeze
  2730.                     com.Name = "255";
  2731.                     com.parameters.Add(reader.ReadUInt16()); //0
  2732.                     break;
  2733.                 case 0x257: //Freeze
  2734.                     com.Name = "257";
  2735.                     break;
  2736.                 case 0x259:
  2737.                     com.Name = "StopMusic(259)";
  2738.                     break;
  2739.                 case 0x25A:
  2740.                     com.Name = "ShipAnimation";
  2741.                     com.parameters.Add(reader.ReadUInt16());
  2742.                     com.parameters.Add(reader.ReadUInt16());
  2743.                     com.parameters.Add(reader.ReadUInt16());
  2744.                     com.parameters.Add(reader.ReadUInt16());
  2745.                     com.parameters.Add(reader.ReadUInt16());
  2746.                     break;
  2747.                 case 0x25B:
  2748.                     com.Name = "25B";
  2749.                     com.parameters.Add(reader.ReadUInt16()); //0 1
  2750.                     break;
  2751.                 case 0x25C:
  2752.                     com.Name = "25C"; //Used in stadium
  2753.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2754.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2755.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2756.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2757.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2758.                     com.parameters.Add(reader.ReadUInt16()); //var (0x4XXX)
  2759.                     break;
  2760.                 case 0x25D:
  2761.                     com.Name = "CheckCGearActive";
  2762.                     com.parameters.Add(reader.ReadUInt16());
  2763.                     break;
  2764.                 case 0x25E:
  2765.                     com.Name = "25E";
  2766.                     break;
  2767.                 case 0x25F:
  2768.                     com.Name = "PlayTheatralMusic";
  2769.                     break;
  2770.                 case 0x260: //126
  2771.                     com.Name = "260";
  2772.                     break;
  2773.                 case 0x276:
  2774.                     com.Name = "(276)";
  2775.                     com.parameters.Add(reader.ReadUInt16());
  2776.                     com.parameters.Add(reader.ReadUInt16());
  2777.                     break;
  2778.                 case 0x2D1:
  2779.                     com.Name = "StoreBCSkyscraperTrainerNumber(2D1)";
  2780.                     com.parameters.Add(reader.ReadUInt16());
  2781.                     break;
  2782.                 default:
  2783.                     com.Name = "0x" + com.Id.ToString("X");
  2784.                     break;
  2785.  
  2786.             }
  2787.             return com;
  2788.         }
  2789.  
  2790.         //private Commands_s readCommandBW2(BinaryReader reader, Commands_s com)
  2791.         //{
  2792.         //    uint functionOffset = 0;
  2793.         //    reader.BaseStream.Position += 1;
  2794.         //    var actualPos = reader.BaseStream.Position;
  2795.         //    if (scriptStartList.Contains((uint)actualPos) || functionOffsetList.Contains((uint)actualPos))
  2796.         //    {
  2797.         //        com.Name = "WrongEnd";
  2798.         //        com.isEnd = 1;
  2799.         //        reader.BaseStream.Position -= 1;
  2800.         //        return com;
  2801.         //    }
  2802.         //    reader.BaseStream.Position -= 1;
  2803.         //    if (reader.BaseStream.Position < reader.BaseStream.Length)
  2804.         //    {
  2805.         //        actualPos = reader.BaseStream.Position;
  2806.         //        if (actualPos == 368)
  2807.         //        {
  2808.         //        }
  2809.         //        if (actualPos + 1 == reader.BaseStream.Length || movOffsetList.Contains((uint)actualPos) || scriptStartList.Contains((uint)actualPos) || functionOffsetList.Contains((uint)actualPos))
  2810.         //        {
  2811.         //            com.isEnd = 1;
  2812.         //        }
  2813.         //    }
  2814.         //    switch (com.Id)
  2815.         //    {
  2816.         //        case 0x2:
  2817.         //            com.Name = "End";
  2818.         //            if (reader.BaseStream.Position < reader.BaseStream.Length)
  2819.         //            {
  2820.         //                var next = reader.ReadByte();
  2821.         //                if (next == 0)
  2822.         //                    com.isEnd = 1;
  2823.         //                else
  2824.         //                    reader.BaseStream.Position -= 1;
  2825.         //            }
  2826.         //            break;
  2827.         //        case 0x03:
  2828.         //            com.Name = "ReturnAfterDelay";
  2829.         //            com.parameters.Add(reader.ReadUInt16());
  2830.         //            break;
  2831.         //        case 0x04:
  2832.         //            com.Name = "CallRoutine";
  2833.         //            if (reader.BaseStream.Position < reader.BaseStream.Length - 4)
  2834.         //            {
  2835.         //                com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  2836.         //                functionOffset = com.parameters[0];
  2837.         //                if (!scriptStartList.Contains(functionOffset) && !functionOffsetList.Contains(functionOffset) && !movOffsetList.Contains(functionOffset))
  2838.         //                {
  2839.         //                    functionOffsetList.Add(functionOffset);
  2840.         //                    Console.AppendText("\nA function is in: " + functionOffset.ToString());
  2841.         //                }
  2842.         //            }
  2843.         //            //com.numJump++;
  2844.         //            ////com.isEnd = 1;
  2845.         //            break;
  2846.         //        case 0x05:
  2847.         //            com.Name = "EndFunction";
  2848.         //            if (reader.BaseStream.Position + 1 > reader.BaseStream.Length) { com.isEnd = 1; break; }
  2849.         //            var next5 = reader.ReadByte();
  2850.         //            if (next5 == 0 || movOffsetList.Contains((uint)reader.BaseStream.Position - 1) || scriptOffList.Contains((uint)reader.BaseStream.Position - 1))
  2851.         //            {
  2852.         //                com.isEnd = 1;
  2853.         //                reader.BaseStream.Position -= 1;
  2854.         //                break;
  2855.         //            }
  2856.         //            else
  2857.         //                reader.BaseStream.Position -= 1;
  2858.         //            break;
  2859.         //        case 0x06:
  2860.         //            com.Name = "SetVar(06)";
  2861.         //            com.parameters.Add(reader.ReadUInt16());
  2862.         //            break;
  2863.         //        case 0x07:
  2864.         //            com.Name = "SetVar(07)";
  2865.         //            com.parameters.Add(reader.ReadUInt16());
  2866.         //            break;
  2867.         //        case 0x08:
  2868.         //            com.Name = "CompareTo";
  2869.         //            com.parameters.Add(reader.ReadUInt16());
  2870.         //            break;
  2871.         //        case 0x09:
  2872.         //            com.Name = "SetVar(09)";
  2873.         //            com.parameters.Add(reader.ReadUInt16());
  2874.         //            break;
  2875.         //        case 0x0A:
  2876.         //            com.Name = "ClearVar";
  2877.         //            com.parameters.Add(reader.ReadUInt16());
  2878.         //            break;
  2879.         //        case 0x0B:
  2880.         //            com.Name = "0B";
  2881.         //            com.parameters.Add(reader.ReadUInt16());
  2882.         //            break;
  2883.         //        //case 0x0C:
  2884.         //        //    com.Name = "0C";
  2885.         //        //    com.parameters.Add(reader.ReadUInt16());
  2886.         //        //    break;
  2887.         //        //case 0x0D:
  2888.         //        //    com.Name = "0D";
  2889.         //        //    com.parameters.Add(reader.ReadUInt16());
  2890.         //        //    break;
  2891.         //        //case 0x0E:
  2892.         //        //    com.Name = "0E";
  2893.         //        //    com.parameters.Add(reader.ReadUInt16());
  2894.         //        //    break;
  2895.         //        //case 0x0F:
  2896.         //        //    com.Name = "0F";
  2897.         //        //    com.parameters.Add(reader.ReadUInt16());
  2898.         //        //    break;
  2899.         //        case 0x10:
  2900.         //            com.Name = "StoreFlag";
  2901.         //            com.parameters.Add(reader.ReadUInt16());
  2902.         //            break;
  2903.         //        case 0x11:
  2904.         //            com.Name = "Condition";
  2905.         //            com.parameters.Add(reader.ReadUInt16());
  2906.         //            break;
  2907.         //        case 0x13:
  2908.         //            com.Name = "StoreVar(13)";
  2909.         //            com.parameters.Add(reader.ReadUInt16());
  2910.         //            com.parameters.Add(reader.ReadUInt16());
  2911.         //            break;
  2912.         //        case 0x14:
  2913.         //            com.Name = "14";
  2914.         //            com.parameters.Add(reader.ReadUInt16());
  2915.         //            break;
  2916.         //        case 0x16:
  2917.         //            com.Name = "16";
  2918.         //            com.parameters.Add(reader.ReadUInt16());
  2919.         //            break;
  2920.         //        case 0x17:
  2921.         //            com.Name = "17";
  2922.         //            com.parameters.Add(reader.ReadUInt16());
  2923.         //            break;
  2924.         //        case 0x19:
  2925.         //            com.Name = "Compare";
  2926.         //            com.parameters.Add(reader.ReadUInt16());
  2927.         //            com.parameters.Add(reader.ReadUInt16());
  2928.         //            break;
  2929.         //        case 0x1C:
  2930.         //            com.Name = "CallStd";
  2931.         //            com.parameters.Add(reader.ReadByte());
  2932.         //            com.parameters.Add(reader.ReadByte());//Standard Function Id.
  2933.         //            break;
  2934.         //        case 0x1D:
  2935.         //            com.Name = "ReturnStd";
  2936.         //            break;
  2937.         //        case 0x1E:
  2938.         //            com.Name = "Jump";
  2939.         //            com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  2940.         //            functionOffset = com.parameters[0];
  2941.         //            if (!scriptStartList.Contains(functionOffset) && !functionOffsetList.Contains(functionOffset) && !movOffsetList.Contains(functionOffset))
  2942.         //            {
  2943.         //                functionOffsetList.Add(functionOffset);
  2944.         //                Console.AppendText("\nA function is in: " + functionOffset.ToString());
  2945.         //            }
  2946.         //            com.numJump++;
  2947.         //            com.isEnd = 1;
  2948.         //            break;
  2949.         //        case 0x1F:
  2950.         //            com.Name = "If";
  2951.         //            com.parameters.Add(reader.ReadByte());
  2952.         //            com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  2953.         //            functionOffset = com.parameters[1];
  2954.         //            if (!scriptStartList.Contains(functionOffset) && !functionOffsetList.Contains(functionOffset) && !movOffsetList.Contains(functionOffset))
  2955.         //            {
  2956.         //                functionOffsetList.Add(functionOffset);
  2957.         //                Console.AppendText("\nA function is in: " + functionOffset.ToString());
  2958.         //            }
  2959.         //            com.numJump++;
  2960.         //            break;
  2961.         //        case 0x21:
  2962.         //            com.Name = "21";
  2963.         //            com.parameters.Add(reader.ReadUInt16());
  2964.         //            break;
  2965.         //        case 0x22:
  2966.         //            com.Name = "22";
  2967.         //            com.parameters.Add(reader.ReadUInt16());
  2968.         //            break;
  2969.         //        case 0x23:
  2970.         //            com.Name = "SetFlag";
  2971.         //            com.parameters.Add(reader.ReadUInt16());
  2972.         //            break;
  2973.         //        case 0x24:
  2974.         //            com.Name = "ClearFlag";
  2975.         //            com.parameters.Add(reader.ReadUInt16());
  2976.         //            break;
  2977.         //        case 0x25:
  2978.         //            com.Name = "StoreVarFlag";
  2979.         //            com.parameters.Add(reader.ReadUInt16());
  2980.         //            com.parameters.Add(reader.ReadUInt16());
  2981.         //            break;
  2982.         //        case 0x26:
  2983.         //            com.Name = "StoreAddVar";
  2984.         //            com.parameters.Add(reader.ReadUInt16());
  2985.         //            com.parameters.Add(reader.ReadUInt16());
  2986.         //            break;
  2987.         //        case 0x27:
  2988.         //            com.Name = "StoreSubVar";
  2989.         //            com.parameters.Add(reader.ReadUInt16());
  2990.         //            com.parameters.Add(reader.ReadUInt16());
  2991.         //            break;
  2992.         //        case 0x28:
  2993.         //            com.Name = "StoreVarValue";
  2994.         //            com.parameters.Add(reader.ReadUInt16()); //Var as container
  2995.         //            com.parameters.Add(reader.ReadUInt16()); //Value to store
  2996.         //            break;
  2997.         //        case 0x29:
  2998.         //            com.Name = "StoreVarVariable";
  2999.         //            com.parameters.Add(reader.ReadUInt16()); //Var as container
  3000.         //            com.parameters.Add(reader.ReadUInt16()); //Value to store
  3001.         //            break;
  3002.         //        case 0x2A:
  3003.         //            com.Name = "StoreVarCallable";
  3004.         //            com.parameters.Add(reader.ReadUInt16()); //Var as container
  3005.         //            com.parameters.Add(reader.ReadUInt16()); //Value to store
  3006.         //            break;
  3007.         //        case 0x2B:
  3008.         //            com.Name = "StoreVar(2B)";
  3009.         //            com.parameters.Add(reader.ReadUInt16()); //Var as container
  3010.         //            com.parameters.Add(reader.ReadUInt16()); //Value to store
  3011.         //            break;
  3012.         //        case 0x2D:
  3013.         //            com.Name = "ClearVar(2D)";
  3014.         //            com.parameters.Add(reader.ReadUInt16());
  3015.         //            break;
  3016.         //        case 0x2E:
  3017.         //            com.Name = "LockAll";
  3018.         //            break;
  3019.         //        case 0x2F:
  3020.         //            com.Name = "UnlockAll";
  3021.         //            break;
  3022.         //        case 0x30:
  3023.         //            com.Name = "WaitMoment";
  3024.         //            break;
  3025.         //        case 0x31:
  3026.         //            com.Name = "31";
  3027.         //            break;
  3028.         //        case 0x32:
  3029.         //            com.Name = "WaitButton";
  3030.         //            break;
  3031.         //        case 0x33:
  3032.         //            com.Name = "MusicalMessage";
  3033.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3034.         //            break;
  3035.         //        case 0x34:
  3036.         //            com.Name = "EventGreyMessage";
  3037.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3038.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3039.         //            break;
  3040.         //        case 0x35:
  3041.         //            com.Name = "MusicalMessage2";
  3042.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3043.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3044.         //            break;
  3045.         //        case 0x36:
  3046.         //            com.Name = "CloseEventGreyMessage";
  3047.         //            break;
  3048.         //        case 0x37:
  3049.         //            com.Name = "37";
  3050.         //            com.parameters.Add(reader.ReadUInt16());
  3051.         //            break;
  3052.         //        case 0x38:
  3053.         //            com.Name = "BubbleMessage";
  3054.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3055.         //            com.parameters.Add(reader.ReadByte()); //Bottom/Top View.
  3056.         //            break;
  3057.         //        case 0x39:
  3058.         //            com.Name = "CloseBubbleMessage";
  3059.         //            break;
  3060.         //        case 0x3A:
  3061.         //            com.Name = "ShowMessageAt";
  3062.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3063.         //            com.parameters.Add(reader.ReadUInt16()); //X coordinate
  3064.         //            com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  3065.         //            com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  3066.         //            break;
  3067.         //        case 0x3B:
  3068.         //            com.Name = "CloseShowMessageAt";
  3069.         //            com.parameters.Add(reader.ReadUInt16());
  3070.         //            break;
  3071.         //        case 0x3C:
  3072.         //            com.Name = "Message";
  3073.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3074.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3075.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3076.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3077.         //            if (reader.BaseStream.Position < reader.BaseStream.Length)
  3078.         //            {
  3079.         //                com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3080.         //                com.parameters.Add(reader.ReadUInt16()); //Message Type
  3081.         //            }
  3082.         //            break;
  3083.         //        case 0x3D:
  3084.         //            com.Name = "Message2";
  3085.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3086.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3087.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3088.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3089.         //            com.parameters.Add(reader.ReadUInt16()); //Message Type
  3090.         //            break;
  3091.         //        case 0x3E:
  3092.         //            com.Name = "CloseMessageKeyPress";
  3093.         //            break;
  3094.         //        case 0x3F:
  3095.         //            com.Name = "CloseMessageKeyPress2";
  3096.         //            break;
  3097.         //        case 0x40:
  3098.         //            com.Name = "MoneyBox";
  3099.         //            com.parameters.Add(reader.ReadUInt16()); //X coordinate
  3100.         //            com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  3101.         //            break;
  3102.         //        case 0x41:
  3103.         //            com.Name = "CloseMoneyBox";
  3104.         //            break;
  3105.         //        case 0x42:
  3106.         //            com.Name = "UpdateMoneyBox";
  3107.         //            break;
  3108.         //        case 0x43:
  3109.         //            com.Name = "BorderedMessage";
  3110.         //            com.parameters.Add(reader.ReadUInt16()); //MessageId
  3111.         //            com.parameters.Add(reader.ReadUInt16()); //Color
  3112.         //            break;
  3113.         //        case 0x44:
  3114.         //            com.Name = "CloseBorderedMessage";
  3115.         //            break;
  3116.         //        case 0x45:
  3117.         //            com.Name = "PaperMessage";
  3118.         //            com.parameters.Add(reader.ReadUInt16()); //MessageId
  3119.         //            com.parameters.Add(reader.ReadUInt16()); //Trans. Coordinate
  3120.         //            break;
  3121.         //        case 0x46:
  3122.         //            com.Name = "ClosePaperMessage";
  3123.         //            break;
  3124.         //        case 0x47:
  3125.         //            com.Name = "YesNoBox";
  3126.         //            com.parameters.Add(reader.ReadUInt16()); //Variable: NO = 0, YES = 1
  3127.         //            break;
  3128.         //        case 0x48:
  3129.         //            com.Name = "Message3";
  3130.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3131.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3132.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3133.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3134.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3135.         //            com.parameters.Add(reader.ReadUInt16()); //Message Type
  3136.         //            com.parameters.Add(reader.ReadUInt16());
  3137.         //            break;
  3138.         //        case 0x49:
  3139.         //            com.Name = "DoubleMessage";
  3140.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3141.         //            com.parameters.Add(reader.ReadByte()); //Costant
  3142.         //            com.parameters.Add(reader.ReadUInt16()); //Id Message Black
  3143.         //            com.parameters.Add(reader.ReadUInt16()); //Id Message White
  3144.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3145.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3146.         //            com.parameters.Add(reader.ReadUInt16()); //Message Type
  3147.         //            break;
  3148.         //        case 0x4A:
  3149.         //            com.Name = "AngryMessage";
  3150.         //            com.parameters.Add(reader.ReadUInt16()); //MessageId
  3151.         //            com.parameters.Add(reader.ReadByte());
  3152.         //            com.parameters.Add(reader.ReadUInt16()); //Bottom/Top View.
  3153.         //            break;
  3154.         //        case 0x4B:
  3155.         //            com.Name = "CloseAngryMessage";
  3156.         //            break;
  3157.         //        case 0x4C:
  3158.         //            com.Name = "SetVarHero";
  3159.         //            com.parameters.Add(reader.ReadByte());
  3160.         //            break;
  3161.         //        case 0x4D:
  3162.         //            com.Name = "SetVarItem";
  3163.         //            com.parameters.Add(reader.ReadByte());
  3164.         //            com.parameters.Add(reader.ReadUInt16());
  3165.         //            break;
  3166.         //        case 0x4E:
  3167.         //            com.Name = "SetVarItemNumber";
  3168.         //            com.parameters.Add(reader.ReadByte());
  3169.         //            com.parameters.Add(reader.ReadUInt16());
  3170.         //            com.parameters.Add(reader.ReadUInt16());
  3171.         //            com.parameters.Add(reader.ReadByte());
  3172.         //            break;
  3173.         //        case 0x4F:
  3174.         //            com.Name = "SetVarItemContainter";
  3175.         //            com.parameters.Add(reader.ReadByte());
  3176.         //            com.parameters.Add(reader.ReadUInt16());
  3177.         //            break;
  3178.         //        case 0x50:
  3179.         //            com.Name = "SetVarItemContained";
  3180.         //            com.parameters.Add(reader.ReadByte());
  3181.         //            com.parameters.Add(reader.ReadUInt16());
  3182.         //            break;
  3183.         //        case 0x51:
  3184.         //            com.Name = "SetVarMove";
  3185.         //            com.parameters.Add(reader.ReadByte());
  3186.         //            com.parameters.Add(reader.ReadUInt16());
  3187.         //            break;
  3188.         //        case 0x52:
  3189.         //            com.Name = "SetVarBag";
  3190.         //            com.parameters.Add(reader.ReadByte());
  3191.         //            com.parameters.Add(reader.ReadUInt16());
  3192.         //            break;
  3193.         //        case 0x53:
  3194.         //            com.Name = "SetVarPartyPokèmon";
  3195.         //            com.parameters.Add(reader.ReadByte());
  3196.         //            com.parameters.Add(reader.ReadUInt16());
  3197.         //            break;
  3198.         //        case 0x54:
  3199.         //            com.Name = "SetVarPartyPokèmonNick";
  3200.         //            com.parameters.Add(reader.ReadByte());
  3201.         //            com.parameters.Add(reader.ReadUInt16());
  3202.         //            break;
  3203.         //        case 0x55:
  3204.         //            com.Name = "SetVar(55)";
  3205.         //            com.parameters.Add(reader.ReadByte());
  3206.         //            com.parameters.Add(reader.ReadUInt16());
  3207.         //            break;
  3208.         //        case 0x56:
  3209.         //            com.Name = "SetVarType";           //382
  3210.         //            com.parameters.Add(reader.ReadByte());   //text variable to set
  3211.         //            com.parameters.Add(reader.ReadUInt16()); //type to set
  3212.         //            break;
  3213.         //        case 0x57:
  3214.         //            com.Name = "SetVarPokèmon";
  3215.         //            com.parameters.Add(reader.ReadByte());
  3216.         //            com.parameters.Add(reader.ReadUInt16());
  3217.         //            break;
  3218.         //        case 0x58:
  3219.         //            com.Name = "SetVarPokèmon2";
  3220.         //            com.parameters.Add(reader.ReadByte());
  3221.         //            com.parameters.Add(reader.ReadUInt16());
  3222.         //            break;
  3223.         //        case 0x59:
  3224.         //            com.Name = "SetVarLocation";
  3225.         //            com.parameters.Add(reader.ReadByte());
  3226.         //            com.parameters.Add(reader.ReadUInt16());
  3227.         //            break;
  3228.         //        case 0x5A:
  3229.         //            com.Name = "SetVarPokèmonNick";
  3230.         //            com.parameters.Add(reader.ReadByte());
  3231.         //            com.parameters.Add(reader.ReadUInt16());
  3232.         //            break;
  3233.         //        case 0x5B:
  3234.         //            com.Name = "SetVar(58)";
  3235.         //            com.parameters.Add(reader.ReadByte());
  3236.         //            com.parameters.Add(reader.ReadUInt16());
  3237.         //            break;
  3238.         //        case 0x5C: // example 654
  3239.         //            com.Name = "SetVarNumberCond";
  3240.         //            com.parameters.Add(reader.ReadByte()); // 1 ?
  3241.         //            com.parameters.Add(reader.ReadUInt16()); // Container to store to
  3242.         //            com.parameters.Add(reader.ReadUInt16()); // Stat to Store [HP ATK DEF SPE SPA SPD, 0-5]
  3243.         //            break;
  3244.         //        case 0x5D:
  3245.         //            com.Name = "SetVarMusicalInfo";
  3246.         //            com.parameters.Add(reader.ReadUInt16());
  3247.         //            com.parameters.Add(reader.ReadUInt16());
  3248.         //            break;
  3249.         //        case 0x5E:
  3250.         //            com.Name = "SetVarNations";
  3251.         //            com.parameters.Add(reader.ReadByte());
  3252.         //            com.parameters.Add(reader.ReadUInt16());
  3253.         //            break;
  3254.         //        case 0x5F:
  3255.         //            com.Name = "SetVarActivities";
  3256.         //            com.parameters.Add(reader.ReadByte());
  3257.         //            com.parameters.Add(reader.ReadUInt16());
  3258.         //            break;
  3259.         //        case 0x60:
  3260.         //            com.Name = "SetVarPower";
  3261.         //            com.parameters.Add(reader.ReadByte());
  3262.         //            com.parameters.Add(reader.ReadUInt16());
  3263.         //            break;
  3264.         //        case 0x61:
  3265.         //            com.Name = "SetVarTrainerType";
  3266.         //            com.parameters.Add(reader.ReadByte());
  3267.         //            com.parameters.Add(reader.ReadUInt16());
  3268.         //            break;
  3269.         //        case 0x62:
  3270.         //            com.Name = "SetVarTrainerType2";
  3271.         //            com.parameters.Add(reader.ReadByte());
  3272.         //            com.parameters.Add(reader.ReadUInt16());
  3273.         //            break;
  3274.         //        case 0x63:
  3275.         //            com.Name = "SetVarGeneralWord";
  3276.         //            com.parameters.Add(reader.ReadByte());
  3277.         //            com.parameters.Add(reader.ReadUInt16());
  3278.         //            break;
  3279.         //        case 0x64:
  3280.         //            com.Name = "ApplyMovement";
  3281.         //            com.parameters.Add(reader.ReadUInt16());
  3282.         //            com.parameters.Add(reader.ReadUInt32() + (uint)reader.BaseStream.Position);
  3283.         //            var movOffset = com.parameters[1];
  3284.         //            if (!movOffsetList.Contains(movOffset))
  3285.         //            {
  3286.         //                movOffsetList.Add(movOffset);
  3287.         //                Console.AppendText("\nA movement is in: " + movOffset.ToString());
  3288.         //            }
  3289.         //            break;
  3290.         //        case 0x65:
  3291.         //            com.Name = "WaitMovement";
  3292.         //            break;
  3293.         //        case 0x66:
  3294.         //            com.Name = "66";
  3295.         //            com.parameters.Add(reader.ReadUInt16());
  3296.         //            com.parameters.Add(reader.ReadUInt16());
  3297.         //            break;
  3298.         //        case 0x67:
  3299.         //            com.Name = "67";
  3300.         //            com.parameters.Add(reader.ReadUInt16());
  3301.         //            uint variable = 0;
  3302.         //            do
  3303.         //            {
  3304.         //                variable = reader.ReadUInt16();
  3305.         //                if (variable < 0x8000)
  3306.         //                    reader.BaseStream.Position -= 2;
  3307.         //                else
  3308.         //                    com.parameters.Add(variable);
  3309.         //            }
  3310.         //            while (variable > 0x8000);
  3311.  
  3312.         //            break;
  3313.         //        case 0x68:
  3314.         //            com.Name = "StoreHeroPosition";
  3315.         //            com.parameters.Add(reader.ReadUInt16()); // Variable as X container.
  3316.         //            com.parameters.Add(reader.ReadUInt16()); // Variable as Y container.
  3317.         //            break;
  3318.         //        case 0x69:
  3319.         //            com.Name = "StoreNPCPosition";
  3320.         //            com.parameters.Add(reader.ReadUInt16()); // NPC Id
  3321.         //            com.parameters.Add(reader.ReadUInt16()); // Variable as X container.
  3322.         //            com.parameters.Add(reader.ReadUInt16()); // Variable as Y container.
  3323.         //            com.parameters.Add(reader.ReadUInt16()); // NPC Id
  3324.         //            com.parameters.Add(reader.ReadUInt16()); // Variable as X container.
  3325.         //            com.parameters.Add(reader.ReadUInt16());
  3326.         //            break;
  3327.         //        case 0x6A:
  3328.         //            com.Name = "StoreNPCFlag";
  3329.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3330.         //            com.parameters.Add(reader.ReadUInt16()); //Flag
  3331.         //            break;
  3332.         //        case 0x6B:
  3333.         //            com.Name = "AddNPC";
  3334.         //            com.parameters.Add(reader.ReadUInt16()); //Npc Id
  3335.         //            break;
  3336.         //        case 0x6C:
  3337.         //            com.Name = "RemoveNPC";
  3338.         //            com.parameters.Add(reader.ReadUInt16()); //Npc Id
  3339.         //            break;
  3340.         //        case 0x6D:
  3341.         //            com.Name = "SetOWPosition";
  3342.         //            com.parameters.Add(reader.ReadUInt16()); //Npc Id
  3343.         //            com.parameters.Add(reader.ReadUInt16()); //X coordinate
  3344.         //            com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  3345.         //            com.parameters.Add(reader.ReadUInt16()); //Z coordinate
  3346.         //            com.parameters.Add(reader.ReadUInt16()); //Face direction
  3347.         //            break;
  3348.         //        case 0x6E:
  3349.         //            com.Name = "StoreHeroNPCOrientation";
  3350.         //            com.parameters.Add(reader.ReadUInt16());
  3351.         //            break;
  3352.         //        case 0x6F:
  3353.         //            com.Name = "6F";
  3354.         //            com.parameters.Add(reader.ReadUInt16());
  3355.         //            com.parameters.Add(reader.ReadUInt16());
  3356.         //            break;
  3357.         //        case 0x70:
  3358.         //            com.Name = "70";
  3359.         //            com.parameters.Add(reader.ReadUInt16()); //Ow_Id (Variable)
  3360.         //            com.parameters.Add(reader.ReadUInt16()); //Return Value
  3361.         //            com.parameters.Add(reader.ReadUInt16()); //X
  3362.         //            com.parameters.Add(reader.ReadUInt16()); //S_854 = 0, S_855 = 3
  3363.         //            com.parameters.Add(reader.ReadUInt16()); //Y
  3364.         //            break;
  3365.         //        //case 0x71:
  3366.         //        //    com.Name = "71";
  3367.         //        //    com.parameters.Add(reader.ReadUInt16());
  3368.         //        //    com.parameters.Add(reader.ReadUInt16());
  3369.         //        //    com.parameters.Add(reader.ReadUInt16());
  3370.         //        //    break;
  3371.         //        //case 0x72:
  3372.         //        //    com.Name = "72";
  3373.         //        //    com.parameters.Add(reader.ReadUInt16());
  3374.         //        //    com.parameters.Add(reader.ReadUInt16());
  3375.         //        //    com.parameters.Add(reader.ReadUInt16());
  3376.         //        //    com.parameters.Add(reader.ReadUInt16());
  3377.         //        //    break;
  3378.         //        case 0x73:
  3379.         //            com.Name = "73";
  3380.         //            com.parameters.Add(reader.ReadUInt16());
  3381.         //            com.parameters.Add(reader.ReadUInt16());
  3382.         //            break;
  3383.         //        case 0x74:
  3384.         //            com.Name = "FacePlayer";
  3385.         //            break;
  3386.         //        case 0x75:
  3387.         //            com.Name = "Release";
  3388.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3389.         //            break;
  3390.         //        case 0x76:
  3391.         //            com.Name = "ReleaseAll";
  3392.         //            break;
  3393.         //        case 0x77:
  3394.         //            com.Name = "Lock";
  3395.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3396.         //            break;
  3397.         //        case 0x78:
  3398.         //            com.Name = "CheckLock";
  3399.         //            com.parameters.Add(reader.ReadUInt16()); //variable
  3400.         //            break;
  3401.         //        case 0x79:
  3402.         //            com.Name = "StoreNPCLevel";
  3403.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  3404.         //            com.parameters.Add(reader.ReadUInt16());
  3405.         //            com.parameters.Add(reader.ReadUInt16());
  3406.         //            break;
  3407.         //        case 0x7B:
  3408.         //            com.Name = "MoveNpctoCoordinates";
  3409.         //            com.parameters.Add(reader.ReadUInt16()); //Npc Id
  3410.         //            com.parameters.Add(reader.ReadUInt16()); //X coordinate
  3411.         //            com.parameters.Add(reader.ReadUInt16()); //Y coordinate
  3412.         //            com.parameters.Add(reader.ReadUInt16()); //Z coordinate
  3413.         //            break;
  3414.         //        case 0x7C:
  3415.         //            com.Name = "7C";
  3416.         //            com.parameters.Add(reader.ReadUInt16());
  3417.         //            com.parameters.Add(reader.ReadUInt16());
  3418.         //            com.parameters.Add(reader.ReadUInt16());
  3419.         //            break;
  3420.         //        //case 0x7D:
  3421.         //        //    com.Name = "7D";
  3422.         //        //    com.parameters.Add(reader.ReadUInt16());
  3423.         //        //    com.parameters.Add(reader.ReadUInt16());
  3424.         //        //    com.parameters.Add(reader.ReadUInt16());
  3425.         //        //    com.parameters.Add(reader.ReadUInt16());
  3426.         //        //    break;
  3427.         //        case 0x7E:
  3428.         //            com.Name = "TeleportUpNPc";
  3429.         //            com.parameters.Add(reader.ReadUInt16()); //Npc Id
  3430.         //            break;
  3431.         //        case 0x7F:
  3432.         //            com.Name = "7F";
  3433.         //            com.parameters.Add(reader.ReadUInt16());
  3434.         //            com.parameters.Add(reader.ReadUInt16());
  3435.         //            break;
  3436.         //        case 0x80:
  3437.         //            com.Name = "80";
  3438.         //            com.parameters.Add(reader.ReadUInt16());
  3439.         //            break;
  3440.         //        case 0x81:
  3441.         //            com.Name = "81";
  3442.         //            break;
  3443.         //        case 0x82:
  3444.         //            com.Name = "82";
  3445.         //            com.parameters.Add(reader.ReadUInt16());
  3446.         //            com.parameters.Add(reader.ReadUInt16());
  3447.         //            break;
  3448.         //        case 0x83:
  3449.         //            com.Name = "SetVar(83)";
  3450.         //            com.parameters.Add(reader.ReadUInt16());
  3451.         //            break;
  3452.         //        case 0x84:
  3453.         //            com.Name = "SetVar(84)";
  3454.         //            com.parameters.Add(reader.ReadUInt16());
  3455.         //            break;
  3456.         //        case 0x85:
  3457.         //            com.Name = "SingleTrainerBattle";
  3458.         //            com.parameters.Add(reader.ReadUInt16()); //Trainer Id
  3459.         //            com.parameters.Add(reader.ReadUInt16()); //2th Trainer Id (If 0x0 Single Battle)
  3460.         //            com.parameters.Add(reader.ReadUInt16()); //win loss logic (0 standard, 1 loss=>win)
  3461.         //            break;
  3462.         //        case 0x86:
  3463.         //            com.Name = "DoubleTrainerBattle";
  3464.         //            com.parameters.Add(reader.ReadUInt16()); //Ally
  3465.         //            com.parameters.Add(reader.ReadUInt16()); //Opp1 Trainer Id
  3466.         //            com.parameters.Add(reader.ReadUInt16()); //Opp2 Trainer Id
  3467.         //            com.parameters.Add(reader.ReadUInt16()); //win loss logic (0 standard, 1 loss=>win)
  3468.         //            break;
  3469.         //        case 0x87:
  3470.         //            com.Name = "MessageBattle";
  3471.         //            com.parameters.Add(reader.ReadUInt16());
  3472.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id?
  3473.         //            com.parameters.Add(reader.ReadUInt16());
  3474.         //            break;
  3475.         //        case 0x88:
  3476.         //            com.Name = "MessageBattle2";
  3477.         //            com.parameters.Add(reader.ReadUInt16());
  3478.         //            com.parameters.Add(reader.ReadUInt16());
  3479.         //            com.parameters.Add(reader.ReadUInt16());
  3480.         //            break;
  3481.         //        case 0x8A:
  3482.         //            com.Name = "8A";
  3483.         //            com.parameters.Add(reader.ReadUInt16());
  3484.         //            com.parameters.Add(reader.ReadUInt16());
  3485.         //            break;
  3486.         //        case 0x8B:
  3487.         //            com.Name = "PlayTrainerMusic";
  3488.         //            com.parameters.Add(reader.ReadUInt16()); // music to play
  3489.         //            break;
  3490.         //        case 0x8C:
  3491.         //            com.Name = "EndBattle";
  3492.         //            break;
  3493.         //        case 0x8D:
  3494.         //            com.Name = "StoreBattleResult";
  3495.         //            com.parameters.Add(reader.ReadUInt16()); //Variable as container.
  3496.         //            break;
  3497.         //        case 0x8E:
  3498.         //            com.Name = "DisableTrainer";
  3499.         //            break;
  3500.         //        case 0x90:
  3501.         //            com.Name = "90";
  3502.         //            com.parameters.Add(reader.ReadUInt16());
  3503.         //            com.parameters.Add(reader.ReadUInt16());
  3504.         //            break;
  3505.         //        case 0x92:
  3506.         //            com.Name = "92";
  3507.         //            com.parameters.Add(reader.ReadUInt16());
  3508.         //            com.parameters.Add(reader.ReadUInt16());
  3509.         //            break;
  3510.         //        case 0x93:
  3511.         //            com.Name = "93";
  3512.         //            com.parameters.Add(reader.ReadUInt16());
  3513.         //            com.parameters.Add(reader.ReadUInt16());
  3514.         //            break;
  3515.         //        case 0x94:
  3516.         //            com.Name = "TrainerBattle";
  3517.         //            com.parameters.Add(reader.ReadUInt16());//Trainer ID
  3518.         //            com.parameters.Add(reader.ReadUInt16());
  3519.         //            com.parameters.Add(reader.ReadUInt16());
  3520.         //            com.parameters.Add(reader.ReadUInt16());
  3521.         //            break;
  3522.         //        case 0x95:
  3523.         //            com.Name = "DeactiveTrainerId";
  3524.         //            com.parameters.Add(reader.ReadUInt16());
  3525.         //            break;
  3526.         //        case 0x96:
  3527.         //            com.Name = "96";
  3528.         //            com.parameters.Add(reader.ReadUInt16()); //Trainer ID
  3529.         //            break;
  3530.         //        case 0x97:
  3531.         //            com.Name = "StoreActiveTrainerId";
  3532.         //            com.parameters.Add(reader.ReadUInt16()); //Trainer ID
  3533.         //            com.parameters.Add(reader.ReadUInt16());
  3534.         //            break;
  3535.         //        case 0x98:
  3536.         //            com.Name = "ChangeMusic";
  3537.         //            com.parameters.Add(reader.ReadUInt16());
  3538.         //            break;
  3539.         //        case 0x9E:
  3540.         //            com.Name = "FadeToDefaultMusic";
  3541.         //            break;
  3542.         //        case 0x9F:
  3543.         //            com.Name = "PlayMusic";
  3544.         //            com.parameters.Add(reader.ReadUInt16());
  3545.         //            break;
  3546.         //        case 0xA1:
  3547.         //            com.Name = "StopMusic";
  3548.         //            com.parameters.Add(reader.ReadUInt16()); //sound?
  3549.         //            break;
  3550.         //        case 0xA2:
  3551.         //            com.Name = "A2";
  3552.         //            com.parameters.Add(reader.ReadUInt16()); //sound?
  3553.         //            com.parameters.Add(reader.ReadUInt16()); //strain
  3554.         //            break;
  3555.         //        case 0xA3:
  3556.         //            com.Name = "AddInstrument";
  3557.         //            com.parameters.Add(reader.ReadUInt16());
  3558.         //            break;
  3559.         //        case 0xA4:
  3560.         //            com.Name = "A4";
  3561.         //            com.parameters.Add(reader.ReadUInt16());
  3562.         //            break;
  3563.         //        case 0xA5:
  3564.         //            com.Name = "CheckInstrument";
  3565.         //            com.parameters.Add(reader.ReadUInt16());
  3566.         //            com.parameters.Add(reader.ReadUInt16());
  3567.         //            break;
  3568.         //        case 0xA6:
  3569.         //            com.Name = "PlaySound";
  3570.         //            com.parameters.Add(reader.ReadUInt16()); //Sound Id
  3571.         //            break;
  3572.         //        case 0xA7:
  3573.         //            com.Name = "WaitSound(A7)";
  3574.         //            break;
  3575.         //        case 0xA8:
  3576.         //            com.Name = "WaitSound(A8)";
  3577.         //            break;
  3578.         //        case 0xA9:
  3579.         //            com.Name = "PlayFanfare";
  3580.         //            com.parameters.Add(reader.ReadUInt16()); //Fanfare Id
  3581.         //            break;
  3582.         //        case 0xAA:
  3583.         //            com.Name = "WaitFanfare";
  3584.         //            break;
  3585.         //        case 0xAB:
  3586.         //            com.Name = "Cry";
  3587.         //            com.parameters.Add(reader.ReadUInt16()); //Pokemon Index #
  3588.         //            com.parameters.Add(reader.ReadUInt16()); //0 ~ unknown
  3589.         //            break;
  3590.         //        case 0xAC:
  3591.         //            com.Name = "WaitCry";
  3592.         //            break;
  3593.         //        case 0xAF:
  3594.         //            com.Name = "SetTextScriptMessage";
  3595.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  3596.         //            com.parameters.Add(reader.ReadUInt16());
  3597.         //            com.parameters.Add(reader.ReadUInt16());
  3598.         //            break;
  3599.         //        case 0xB0:
  3600.         //            com.Name = "CloseMulti";
  3601.         //            break;
  3602.         //        case 0xB1:
  3603.         //            com.Name = "B1";
  3604.         //            break;
  3605.         //        case 0xB2:
  3606.         //            com.Name = "Multi(B2)";           //88
  3607.         //            com.parameters.Add(reader.ReadByte());
  3608.         //            com.parameters.Add(reader.ReadByte());
  3609.         //            com.parameters.Add(reader.ReadByte());
  3610.         //            com.parameters.Add(reader.ReadByte());
  3611.         //            com.parameters.Add(reader.ReadByte());
  3612.         //            com.parameters.Add(reader.ReadUInt16());
  3613.         //            break;
  3614.         //        case 0xB3:
  3615.         //            com.Name = "FadeScreen";
  3616.         //            com.parameters.Add(reader.ReadUInt16());
  3617.         //            com.parameters.Add(reader.ReadUInt16());
  3618.         //            com.parameters.Add(reader.ReadUInt16());
  3619.         //            com.parameters.Add(reader.ReadUInt16());
  3620.         //            break;
  3621.         //        case 0xB4:
  3622.         //            com.Name = "ResetScreen";
  3623.         //            break;
  3624.         //        case 0xB5:
  3625.         //            com.Name = "GiveItem";
  3626.         //            com.parameters.Add(reader.ReadUInt16());
  3627.         //            com.parameters.Add(reader.ReadUInt16());
  3628.         //            com.parameters.Add(reader.ReadUInt16());
  3629.         //            break;
  3630.         //        case 0xB6:
  3631.         //            com.Name = "TakeItem";
  3632.         //            com.parameters.Add(reader.ReadUInt16()); // Item Index Number
  3633.         //            com.parameters.Add(reader.ReadUInt16()); // Quantity
  3634.         //            com.parameters.Add(reader.ReadUInt16()); // Return Result (0=added successfully | 1=full bag)
  3635.         //            break;
  3636.         //        case 0xB7:
  3637.         //            com.Name = "CheckItemBagSpace";       //Store if it is possible to give an item.
  3638.         //            com.parameters.Add(reader.ReadUInt16()); // Item Index Number
  3639.         //            com.parameters.Add(reader.ReadUInt16()); // Quantity
  3640.         //            com.parameters.Add(reader.ReadUInt16()); // Return Result (0=not full | 1=full)
  3641.         //            break;
  3642.         //        case 0xB8:
  3643.         //            com.Name = "CheckItemBagNumber";              //222
  3644.         //            com.parameters.Add(reader.ReadUInt16()); // Item #
  3645.         //            com.parameters.Add(reader.ReadUInt16()); // Minimum Quantity / Return X if has >=1
  3646.         //            com.parameters.Add(reader.ReadUInt16()); // Result Storage variable/container
  3647.         //            break;
  3648.         //        case 0xB9:
  3649.         //            com.Name = "StoreItemCount";
  3650.         //            com.parameters.Add(reader.ReadUInt16()); // item #
  3651.         //            com.parameters.Add(reader.ReadUInt16()); // Return to storage
  3652.         //            break;
  3653.         //        case 0xBA:
  3654.         //            com.Name = "CheckItemContainer";
  3655.         //            com.parameters.Add(reader.ReadUInt16());
  3656.         //            com.parameters.Add(reader.ReadUInt16());
  3657.         //            break;
  3658.         //        case 0xBB:
  3659.         //            com.Name = "StoreItemBag";
  3660.         //            com.parameters.Add(reader.ReadUInt16());
  3661.         //            com.parameters.Add(reader.ReadUInt16());
  3662.         //            break;
  3663.         //        case 0xBC:
  3664.         //            com.Name = "BC";
  3665.         //            com.parameters.Add(reader.ReadUInt16());
  3666.         //            break;
  3667.         //        case 0xBD:
  3668.         //            com.Name = "BD";
  3669.         //            com.parameters.Add(reader.ReadUInt16());
  3670.         //            com.parameters.Add(reader.ReadUInt16());
  3671.         //            break;
  3672.         //        case 0xBE:
  3673.         //            com.Name = "Warp";
  3674.         //            com.parameters.Add(reader.ReadUInt16()); //Map Id
  3675.         //            com.parameters.Add(reader.ReadUInt16()); // X coordinate
  3676.         //            com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  3677.         //            break;
  3678.         //        case 0xBF:
  3679.         //            com.Name = "TeleportWarp";
  3680.         //            com.parameters.Add(reader.ReadUInt16()); //Map Id
  3681.         //            com.parameters.Add(reader.ReadUInt16()); // X coordinate
  3682.         //            com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  3683.         //            com.parameters.Add(reader.ReadUInt16()); // Z coordinate
  3684.         //            break;
  3685.         //        case 0xC1:
  3686.         //            com.Name = "FallWarp";
  3687.         //            com.parameters.Add(reader.ReadUInt16()); //Map Id
  3688.         //            com.parameters.Add(reader.ReadUInt16()); // X coordinate
  3689.         //            com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  3690.         //            break;
  3691.         //        case 0xC2:
  3692.         //            com.Name = "FastWarp";
  3693.         //            com.parameters.Add(reader.ReadUInt16()); //Map Id
  3694.         //            com.parameters.Add(reader.ReadUInt16()); // X coordinate
  3695.         //            com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  3696.         //            com.parameters.Add(reader.ReadUInt16()); // Hero's Facing
  3697.         //            break;
  3698.         //        case 0xC3:
  3699.         //            com.Name = "UnionWarp"; // warp to union room
  3700.         //            break;
  3701.         //        case 0xC4:
  3702.         //            com.Name = "TeleportWarp";
  3703.         //            com.parameters.Add(reader.ReadUInt16()); //Map Id
  3704.         //            com.parameters.Add(reader.ReadUInt16()); // X coordinate
  3705.         //            com.parameters.Add(reader.ReadUInt16()); // Y coordinate
  3706.         //            com.parameters.Add(reader.ReadUInt16()); // Z coordinate
  3707.         //            com.parameters.Add(reader.ReadUInt16()); // Hero's Facing
  3708.         //            break;
  3709.         //        case 0xC5:
  3710.         //            com.Name = "SurfAnimation";
  3711.         //            break;
  3712.         //        case 0xC6:
  3713.         //            com.Name = "SpecialAnimation";
  3714.         //            com.parameters.Add(reader.ReadUInt16());
  3715.         //            break;
  3716.         //        case 0xC7:
  3717.         //            com.Name = "SpecialAnimation2";
  3718.         //            com.parameters.Add(reader.ReadUInt16());
  3719.         //            com.parameters.Add(reader.ReadUInt16());
  3720.         //            break;
  3721.         //        case 0xC8:
  3722.         //            com.Name = "CallAnimation";
  3723.         //            com.parameters.Add(reader.ReadUInt16()); //Animation Id
  3724.         //            com.parameters.Add(reader.ReadUInt16());
  3725.         //            break;
  3726.         //        case 0xCB:
  3727.         //            com.Name = "StoreRandomNumber";
  3728.         //            com.parameters.Add(reader.ReadUInt16());
  3729.         //            com.parameters.Add(reader.ReadUInt16());
  3730.         //            break;
  3731.         //        case 0xCC:
  3732.         //            com.Name = "StoreVarItem";
  3733.         //            com.parameters.Add(reader.ReadUInt16());
  3734.         //            break;
  3735.         //        case 0xCD:
  3736.         //            com.Name = "StoreDayPart";
  3737.         //            com.parameters.Add(reader.ReadUInt16());
  3738.         //            break;
  3739.         //        case 0xCE:
  3740.         //            com.Name = "CE";
  3741.         //            com.parameters.Add(reader.ReadUInt16());
  3742.         //            break;
  3743.         //        case 0xCF:
  3744.         //            com.Name = "StoreDay";
  3745.         //            com.parameters.Add(reader.ReadUInt16());
  3746.         //            break;
  3747.         //        case 0xD0:
  3748.         //            com.Name = "StoreDate";
  3749.         //            com.parameters.Add(reader.ReadUInt16()); //Month Return to var/cont
  3750.         //            com.parameters.Add(reader.ReadUInt16()); //Day Return to var/cont
  3751.         //            break;
  3752.         //        case 0xD1:
  3753.         //            com.Name = "D1";
  3754.         //            com.parameters.Add(reader.ReadUInt16());
  3755.         //            com.parameters.Add(reader.ReadUInt16());
  3756.         //            break;
  3757.         //        case 0xD2:
  3758.         //            com.Name = "StoreSeason";
  3759.         //            com.parameters.Add(reader.ReadUInt16());
  3760.         //            break;
  3761.         //        case 0xD3:
  3762.         //            com.Name = "D3";
  3763.         //            com.parameters.Add(reader.ReadUInt16());
  3764.         //            break;
  3765.         //        case 0xD4:
  3766.         //            com.Name = "StoreBirthDay";
  3767.         //            com.parameters.Add(reader.ReadUInt16());
  3768.         //            com.parameters.Add(reader.ReadUInt16());
  3769.         //            break;
  3770.         //        case 0xD5:
  3771.         //            com.Name = "StoreBadge";
  3772.         //            com.parameters.Add(reader.ReadUInt16()); //Variable to return
  3773.         //            com.parameters.Add(reader.ReadUInt16()); //Badge Id
  3774.         //            break;
  3775.         //        case 0xD6:
  3776.         //            com.Name = "SetBadge";
  3777.         //            com.parameters.Add(reader.ReadUInt16()); //Badge Id
  3778.         //            break;
  3779.         //        case 0xD7:
  3780.         //            com.Name = "StoreBadgeNumber";
  3781.         //            com.parameters.Add(reader.ReadUInt16());
  3782.         //            break;
  3783.         //        case 0xD8:
  3784.         //            com.Name = "D8";
  3785.         //            com.parameters.Add(reader.ReadUInt16()); //Variable to return
  3786.         //            com.parameters.Add(reader.ReadUInt16()); //Badge Id
  3787.         //            break;
  3788.         //        case 0xD9:
  3789.         //            com.Name = "D9";
  3790.         //            com.parameters.Add(reader.ReadUInt16());
  3791.         //            break;
  3792.         //        case 0xDA:
  3793.         //            com.Name = "DA";
  3794.         //            com.parameters.Add(reader.ReadUInt16());
  3795.         //            com.parameters.Add(reader.ReadUInt16());
  3796.         //            com.parameters.Add(reader.ReadUInt16());
  3797.         //            break;
  3798.         //        case 0xDB:
  3799.         //            com.Name = "DB";
  3800.         //            break;
  3801.         //        case 0xDC:
  3802.         //            com.Name = "DC";
  3803.         //            com.parameters.Add(reader.ReadUInt16());
  3804.         //            com.parameters.Add(reader.ReadUInt16());
  3805.         //            com.parameters.Add(reader.ReadUInt16());
  3806.         //            com.parameters.Add(reader.ReadUInt16());
  3807.         //            break;
  3808.         //        case 0xDD:
  3809.         //            com.Name = "StorePokèmonCaught";
  3810.         //            com.parameters.Add(reader.ReadUInt16());
  3811.         //            com.parameters.Add(reader.ReadUInt16());
  3812.         //            break;
  3813.  
  3814.         //        case 0xDE:
  3815.         //            com.Name = "SpeciesDisplayDE"; // species display popup, Store
  3816.         //            com.parameters.Add(reader.ReadUInt16()); //0
  3817.         //            com.parameters.Add(reader.ReadUInt16()); //species
  3818.         //            break;
  3819.         //        case 0xDF:
  3820.         //            com.Name = "DF"; // species display popup, Store
  3821.         //            com.parameters.Add(reader.ReadUInt16());
  3822.         //            com.parameters.Add(reader.ReadUInt16());
  3823.         //            com.parameters.Add(reader.ReadUInt16());
  3824.         //            break;
  3825.         //        case 0xE0:
  3826.         //            com.Name = "StoreVersion";
  3827.         //            com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  3828.         //            break;
  3829.         //        case 0xE1:
  3830.         //            com.Name = "StoreGender";
  3831.         //            com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  3832.         //            break;
  3833.         //        case 226:
  3834.         //            com.Name = "StoreE2";
  3835.         //            com.parameters.Add(reader.ReadUInt16()); //return result to this variable/cont
  3836.         //            break;
  3837.         //        case 0xE4:
  3838.         //            com.Name = "E4";
  3839.         //            com.parameters.Add(reader.ReadUInt16());
  3840.         //            break;
  3841.         //        case 0xE5:
  3842.         //            com.Name = "StoreE5";
  3843.         //            com.parameters.Add(reader.ReadUInt16());
  3844.         //            break;
  3845.         //        case 230:
  3846.         //            com.Name = "CheckKeyItem";
  3847.         //            com.parameters.Add(reader.ReadUInt16());
  3848.         //            com.parameters.Add(reader.ReadUInt16());
  3849.         //            break;
  3850.         //        case 0xE7:
  3851.         //            com.Name = "ActivateKeyItem";
  3852.         //            com.parameters.Add(reader.ReadUInt16());
  3853.         //            break;
  3854.         //        case 232:
  3855.         //            com.Name = "CheckKeyItem2";
  3856.         //            com.parameters.Add(reader.ReadUInt16());
  3857.         //            com.parameters.Add(reader.ReadUInt16());
  3858.         //            break;
  3859.         //        case 0xE9:
  3860.         //            com.Name = "E9";
  3861.         //            com.parameters.Add(reader.ReadUInt16());
  3862.         //            break;
  3863.         //        case 0xEA:
  3864.         //            com.Name = "EA";
  3865.         //            com.parameters.Add(reader.ReadUInt16());
  3866.         //            break;
  3867.         //        case 0xEB:
  3868.         //            com.Name = "EB";
  3869.         //            com.parameters.Add(reader.ReadUInt16());
  3870.         //            break;
  3871.         //        case 0xEC:
  3872.         //            com.Name = "EC";
  3873.         //            break;
  3874.         //        case 0xED:
  3875.         //            com.Name = "ED";
  3876.         //            break;
  3877.         //        case 0xEE:
  3878.         //            com.Name = "EE";
  3879.         //            com.parameters.Add(reader.ReadUInt16());
  3880.         //            break;
  3881.         //        case 0xEF:
  3882.         //            com.Name = "EF";
  3883.         //            com.parameters.Add(reader.ReadUInt16());
  3884.         //            break;
  3885.         //        case 0xF0:
  3886.         //            com.Name = "GivePokèmonMansion";
  3887.         //            com.parameters.Add(reader.ReadUInt16()); //POKE
  3888.         //            break;
  3889.         //        case 0xF1:
  3890.         //            com.Name = "F1";
  3891.         //            com.parameters.Add(reader.ReadUInt16());
  3892.         //            break;
  3893.         //        case 0xF2:
  3894.         //            com.Name = "F2";
  3895.         //            com.parameters.Add(reader.ReadUInt16());
  3896.         //            com.parameters.Add(reader.ReadUInt16());
  3897.         //            break;
  3898.         //        case 0xF3:
  3899.         //            com.Name = "F3";
  3900.         //            com.parameters.Add(reader.ReadUInt16());
  3901.         //            com.parameters.Add(reader.ReadUInt16());
  3902.         //            break;
  3903.         //        case 0xF4:
  3904.         //            com.Name = "F4";
  3905.         //            com.parameters.Add(reader.ReadUInt16());
  3906.         //            com.parameters.Add(reader.ReadUInt16());
  3907.         //            break;
  3908.         //        case 0xF5:
  3909.         //            com.Name = "F5";
  3910.         //            com.parameters.Add(reader.ReadUInt16());
  3911.         //            com.parameters.Add(reader.ReadUInt16());
  3912.         //            break;
  3913.         //        case 0xF6:
  3914.         //            com.Name = "F6";
  3915.         //            com.parameters.Add(reader.ReadUInt16());
  3916.         //            com.parameters.Add(reader.ReadUInt16());
  3917.         //            break;
  3918.         //        case 0xF7:
  3919.         //            com.Name = "F7";
  3920.         //            com.parameters.Add(reader.ReadUInt16());
  3921.         //            break;
  3922.         //        case 0xF8:
  3923.         //            com.Name = "F8";
  3924.         //            com.parameters.Add(reader.ReadUInt16());
  3925.         //            com.parameters.Add(reader.ReadUInt16());
  3926.         //            break;
  3927.         //        case 0xF9:
  3928.         //            com.Name = "F9";
  3929.         //            com.parameters.Add(reader.ReadUInt16());
  3930.         //            break;
  3931.         //        case 0xFA:
  3932.         //            com.Name = "TakeMoney";           //66
  3933.         //            com.parameters.Add(reader.ReadUInt16()); //Removes this amount of money from the player's $.
  3934.         //            break;
  3935.         //        case 0xFB:
  3936.         //            com.Name = "CheckEnoughMoney";            //66
  3937.         //            com.parameters.Add(reader.ReadUInt16()); //Result storage container (0=enough $|1=not enough $)
  3938.         //            com.parameters.Add(reader.ReadUInt16()); //Stores if current $ is >= [THIS ARGUMENT]
  3939.         //            break;
  3940.         //        case 0xFC:
  3941.         //            com.Name = "StorePokèmonHappiness";
  3942.         //            com.parameters.Add(reader.ReadUInt16()); //Happiness storage container
  3943.         //            com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  3944.         //            break;
  3945.         //        case 0xFD:
  3946.         //            com.Name = "IncPokèmonHappiness";
  3947.         //            com.parameters.Add(reader.ReadUInt16());
  3948.         //            com.parameters.Add(reader.ReadUInt16());
  3949.         //            com.parameters.Add(reader.ReadUInt16());
  3950.         //            break;
  3951.         //        case 0xFE:
  3952.         //            com.Name = "StorePartySpecies";
  3953.         //            if (reader.BaseStream.Position == reader.BaseStream.Length) //this is temporary to catch movement related errors
  3954.         //            {
  3955.         //                com.isEnd = 1;
  3956.         //                break;
  3957.         //            }
  3958.         //            com.parameters.Add(reader.ReadUInt16());    // Result Storage of Storeed species index #
  3959.         //            if (reader.BaseStream.Position + 1 >= reader.BaseStream.Length)
  3960.         //            {
  3961.         //                com.isEnd = 1;
  3962.         //                break;
  3963.         //            }
  3964.         //            else
  3965.         //            {
  3966.         //                com.parameters.Add(reader.ReadUInt16()); // PKM to Store
  3967.         //                break;
  3968.         //            }
  3969.         //        case 0xFF:
  3970.         //            com.Name = "StorePokèmonFormNumber";
  3971.         //            com.parameters.Add(reader.ReadUInt16());
  3972.         //            com.parameters.Add(reader.ReadUInt16());
  3973.         //            var nextFF = reader.ReadUInt16();
  3974.         //            while (nextFF >= 0x4000) { com.parameters.Add(nextFF); nextFF = reader.ReadUInt16(); }
  3975.         //            reader.BaseStream.Position -= 2;
  3976.         //            break;
  3977.         //        case 0x101:
  3978.         //            com.Name = "101";
  3979.         //            com.parameters.Add(reader.ReadUInt16());
  3980.         //            com.parameters.Add(reader.ReadUInt16());
  3981.         //            break;
  3982.         //        case 0x102:
  3983.         //            com.Name = "CheckEgg";
  3984.         //            com.parameters.Add(reader.ReadUInt16()); //Result storage container
  3985.         //            com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  3986.         //            break;
  3987.         //        case 0x103:
  3988.         //            com.Name = "StorePartyNumberMinimum";
  3989.         //            com.parameters.Add(reader.ReadUInt16()); //Result Storage container
  3990.         //            com.parameters.Add(reader.ReadUInt16()); //Does the player have more than [VALUE]? Return 0 if true.
  3991.         //            break;
  3992.         //        case 0x104:
  3993.         //            com.Name = "HealPokèmon";
  3994.         //            break;
  3995.         //        case 0x105:
  3996.         //            com.Name = "RenamePokèmon";
  3997.         //            com.parameters.Add(reader.ReadUInt16());
  3998.         //            com.parameters.Add(reader.ReadUInt16());
  3999.         //            com.parameters.Add(reader.ReadUInt16());
  4000.         //            break;
  4001.         //        case 0x106:
  4002.         //            com.Name = "106";
  4003.         //            com.parameters.Add(reader.ReadUInt16()); //Req
  4004.         //            break;
  4005.         //        case 0x107:
  4006.         //            com.Name = "StoreChosenPokèmon";
  4007.         //            com.parameters.Add(reader.ReadUInt16()); //Dialog Result Logic (1 if PKM Chosen) default 0
  4008.         //            com.parameters.Add(reader.ReadUInt16()); //    \->Variable Storage
  4009.         //            com.parameters.Add(reader.ReadUInt16()); //Pokemon Choice Variable Storage
  4010.         //            break;
  4011.         //        case 0x108:
  4012.         //            com.Name = "StorePokèmonMoveLearned";
  4013.         //            com.parameters.Add(reader.ReadUInt16());
  4014.         //            com.parameters.Add(reader.ReadUInt16());
  4015.         //            break;
  4016.         //        case 0x109:
  4017.         //            com.Name = "ChooseMoveForgot";
  4018.         //            com.parameters.Add(reader.ReadUInt16());
  4019.         //            com.parameters.Add(reader.ReadUInt16());
  4020.         //            com.parameters.Add(reader.ReadUInt16());
  4021.         //            com.parameters.Add(reader.ReadUInt16());
  4022.         //            break;
  4023.         //        case 0x10A:
  4024.         //            com.Name = "StorePokèmonMoveForgot";
  4025.         //            com.parameters.Add(reader.ReadUInt16());
  4026.         //            com.parameters.Add(reader.ReadUInt16());
  4027.         //            com.parameters.Add(reader.ReadUInt16());
  4028.         //            break;
  4029.         //        case 0x10B:
  4030.         //            com.Name = "10B";
  4031.         //            com.parameters.Add(reader.ReadUInt16());
  4032.         //            com.parameters.Add(reader.ReadUInt16());
  4033.         //            com.parameters.Add(reader.ReadUInt16());
  4034.         //            break;
  4035.         //        case 0x10C:
  4036.         //            com.Name = "GivePokèmon";
  4037.         //            com.parameters.Add(reader.ReadUInt16()); //Id Pokèmon
  4038.         //            com.parameters.Add(reader.ReadUInt16());
  4039.         //            com.parameters.Add(reader.ReadUInt16()); //Item
  4040.         //            com.parameters.Add(reader.ReadUInt16()); //Level
  4041.         //            break;
  4042.         //        case 0x10D:
  4043.         //            com.Name = "StorePokemonPartyAt";
  4044.         //            com.parameters.Add(reader.ReadUInt16()); //Id Pokèmon Party
  4045.         //            com.parameters.Add(reader.ReadUInt16());
  4046.         //            break;
  4047.         //        case 0x10E:
  4048.         //            com.Name = "GivePokèmon(10E)";
  4049.         //            com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  4050.         //            com.parameters.Add(reader.ReadUInt16()); //Egg Pokemon to try to
  4051.         //            com.parameters.Add(reader.ReadUInt16()); //Forme
  4052.         //            com.parameters.Add(reader.ReadUInt16()); //Level
  4053.         //            com.parameters.Add(reader.ReadUInt16()); //3
  4054.         //            com.parameters.Add(reader.ReadUInt16()); //2
  4055.         //            com.parameters.Add(reader.ReadUInt16()); //0
  4056.         //            com.parameters.Add(reader.ReadUInt16()); //0
  4057.         //            com.parameters.Add(reader.ReadUInt16()); //4
  4058.         //            break;
  4059.         //        case 0x10F:
  4060.         //            com.Name = "GiveEgg(10F)";
  4061.         //            com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  4062.         //            com.parameters.Add(reader.ReadUInt16()); //Egg Pokemon to try to
  4063.         //            com.parameters.Add(reader.ReadUInt16()); //Response if Party is Full (~0=true or FORME?)
  4064.         //            break;
  4065.         //        case 0x110:
  4066.         //            com.Name = "StorePokèmonSex";
  4067.         //            com.parameters.Add(reader.ReadUInt16());
  4068.         //            com.parameters.Add(reader.ReadUInt16());
  4069.         //            com.parameters.Add(reader.ReadUInt16());
  4070.         //            break;
  4071.         //        case 0x113:
  4072.         //            com.Name = "113";
  4073.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4074.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4075.         //            break;
  4076.         //        case 0x114:
  4077.         //            com.Name = "StorePartyHavePokèmon";
  4078.         //            com.parameters.Add(reader.ReadUInt16());
  4079.         //            com.parameters.Add(reader.ReadUInt16()); //RV
  4080.         //            break;
  4081.         //        case 0x115:
  4082.         //            com.Name = "StorePartyCanLearnMove";
  4083.         //            com.parameters.Add(reader.ReadUInt16()); //Variable to return result to
  4084.         //            com.parameters.Add(reader.ReadUInt16()); //move to Store
  4085.         //            com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  4086.         //            break;
  4087.         //        case 0x116:
  4088.         //            com.Name = "StorePartyCanUseMove";
  4089.         //            com.parameters.Add(reader.ReadUInt16());
  4090.         //            com.parameters.Add(reader.ReadUInt16()); //RV
  4091.         //            break;
  4092.         //        case 0x117:
  4093.         //            com.Name = "StorePokemonForm";
  4094.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4095.         //            com.parameters.Add(reader.ReadUInt16()); //val
  4096.         //            break;
  4097.         //        case 0x118:
  4098.         //            com.Name = "CheckChosenSpecies";
  4099.         //            com.parameters.Add(reader.ReadUInt16()); //Specie
  4100.         //            com.parameters.Add(reader.ReadUInt16()); //RV
  4101.         //            com.parameters.Add(reader.ReadUInt16()); //Pokèmon
  4102.         //            break;
  4103.         //        //case 0x11A:
  4104.         //        //    com.Name = "11A";
  4105.         //        //    com.parameters.Add(reader.ReadUInt16());
  4106.         //        //    com.parameters.Add(reader.ReadUInt16());
  4107.         //        //    com.parameters.Add(reader.ReadUInt16());
  4108.         //        //    com.parameters.Add(reader.ReadUInt16());
  4109.         //        //    break;
  4110.         //        case 0x11B:
  4111.         //            com.Name = "StorePartyType";
  4112.         //            com.parameters.Add(reader.ReadUInt16()); // Return Type 1
  4113.         //            com.parameters.Add(reader.ReadUInt16()); // Return Type 2
  4114.         //            com.parameters.Add(reader.ReadUInt16()); // Party member to Store
  4115.         //            break;
  4116.         //        case 0x11C:
  4117.         //            com.Name = "ForgotMove";
  4118.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4119.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4120.         //            com.parameters.Add(reader.ReadUInt16()); //var
  4121.         //            break;
  4122.         //        //case 0x11D:
  4123.         //        //    com.Name = "SetFavorite";           //82
  4124.         //        //    com.parameters.Add(reader.ReadUInt16()); //Party member to set as favorite Pokemon
  4125.         //        //    break;
  4126.         //        case 0x11E:
  4127.         //            com.Name = "BadgeAnimation";
  4128.         //            com.parameters.Add(reader.ReadUInt16());
  4129.         //            break;
  4130.         //        case 0x11F:
  4131.         //            com.Name = "StorePokèmonPartyNumberBadge";
  4132.         //            com.parameters.Add(reader.ReadUInt16());
  4133.         //            com.parameters.Add(reader.ReadUInt16());
  4134.         //            break;
  4135.         //        case 0x120:
  4136.         //            com.Name = "SetVarPokèmonTrade";
  4137.         //            com.parameters.Add(reader.ReadUInt16());
  4138.         //            com.parameters.Add(reader.ReadUInt16());
  4139.         //            break;
  4140.         //        case 0x121:
  4141.         //            com.Name = "CheckPartyAmount";
  4142.         //            com.parameters.Add(reader.ReadUInt16());//Bool(Ret)
  4143.         //            com.parameters.Add(reader.ReadUInt16());//Amount
  4144.         //            break;
  4145.         //        case 0x124:
  4146.         //            com.Name = "124";
  4147.         //            com.parameters.Add(reader.ReadUInt16());
  4148.         //            com.parameters.Add(reader.ReadUInt16());
  4149.         //            break;
  4150.         //        case 0x126:
  4151.         //            com.Name = "126";
  4152.         //            com.parameters.Add(reader.ReadUInt16());
  4153.         //            com.parameters.Add(reader.ReadUInt16());
  4154.         //            com.parameters.Add(reader.ReadUInt16());
  4155.         //            com.parameters.Add(reader.ReadUInt16());
  4156.         //            break;
  4157.         //        case 0x127:
  4158.         //            com.Name = "127";
  4159.         //            com.parameters.Add(reader.ReadUInt16());
  4160.         //            com.parameters.Add(reader.ReadUInt16());//Ow
  4161.         //            com.parameters.Add(reader.ReadUInt16());//X
  4162.         //            com.parameters.Add(reader.ReadUInt16());//Y
  4163.         //            break;
  4164.         //        case 0x128:
  4165.         //            com.Name = "128";
  4166.         //            com.parameters.Add(reader.ReadUInt16());
  4167.         //            break;
  4168.         //        case 0x129:
  4169.         //            com.Name = "129";
  4170.         //            com.parameters.Add(reader.ReadUInt16());
  4171.         //            com.parameters.Add(reader.ReadUInt16());
  4172.         //            break;
  4173.         //        case 0x12A:
  4174.         //            com.Name = "12A";
  4175.         //            com.parameters.Add(reader.ReadUInt16());
  4176.         //            break;
  4177.         //        //case 0x12B:
  4178.         //        //    com.Name = "12B";
  4179.         //        //    com.parameters.Add(reader.ReadUInt16()); //Req
  4180.         //        //    com.parameters.Add(reader.ReadUInt16()); //Req
  4181.         //        //    com.parameters.Add(reader.ReadUInt16()); //Req
  4182.         //        //    break;
  4183.         //        case 0x12C:
  4184.         //            com.Name = "12C";
  4185.         //            com.parameters.Add(reader.ReadUInt16());
  4186.         //            break;
  4187.         //        case 0x12D:
  4188.         //            com.Name = "12D";
  4189.         //            com.parameters.Add(reader.ReadUInt16());
  4190.         //            com.parameters.Add(reader.ReadUInt16());
  4191.         //            com.parameters.Add(reader.ReadUInt16()); //0
  4192.         //            com.parameters.Add(reader.ReadUInt16());
  4193.         //            break;
  4194.         //        case 0x12E:
  4195.         //            com.Name = "12E";
  4196.         //            com.parameters.Add(reader.ReadUInt16());
  4197.         //            com.parameters.Add(reader.ReadUInt16());
  4198.         //            com.parameters.Add(reader.ReadUInt16());
  4199.         //            break;
  4200.         //        case 0x12F:
  4201.         //            com.Name = "12F";
  4202.         //            com.parameters.Add(reader.ReadUInt16());
  4203.         //            break;
  4204.         //        case 0x130:
  4205.         //            com.Name = "BootPCSound";
  4206.         //            break;
  4207.         //        case 0x131:
  4208.         //            com.Name = "PC-131";
  4209.         //            break;
  4210.         //        case 0x132:
  4211.         //            com.Name = "132";
  4212.         //            com.parameters.Add(reader.ReadUInt16());
  4213.         //            break;
  4214.         //        case 0x134:
  4215.         //            com.Name = "134";
  4216.         //            break;
  4217.         //        //case 0x136:
  4218.         //        //    com.Name = "136";
  4219.         //        //    com.parameters.Add(reader.ReadByte());
  4220.         //        //    break;
  4221.         //        case 0x137:
  4222.         //            com.Name = "ShowClockSaving";
  4223.         //            com.parameters.Add(reader.ReadUInt16());
  4224.         //            break;
  4225.         //        case 0x138:
  4226.         //            com.Name = "138";
  4227.         //            com.parameters.Add(reader.ReadUInt16());
  4228.         //            com.parameters.Add(reader.ReadUInt16());
  4229.         //            com.parameters.Add(reader.ReadUInt16());
  4230.         //            break;
  4231.         //        case 0x139:
  4232.         //            com.Name = "SaveData(139)";
  4233.         //            com.parameters.Add(reader.ReadUInt16());
  4234.         //            break;
  4235.         //        case 0x13A:
  4236.         //            com.Name = "13A";
  4237.         //            com.parameters.Add(reader.ReadUInt16());
  4238.         //            break;
  4239.         //        case 0x13B:
  4240.         //            com.Name = "CheckWireless";
  4241.         //            com.parameters.Add(reader.ReadUInt16());
  4242.         //            break;
  4243.         //        //case 0x13C:
  4244.         //        //    com.Name = "13C";
  4245.         //        //    break;
  4246.         //        //case 0x13D:
  4247.         //        //    com.Name = "13D";
  4248.         //        //    com.parameters.Add(reader.ReadByte()); //Elevation
  4249.         //        //    com.parameters.Add(reader.ReadUInt16()); //Rotation
  4250.         //        //    com.parameters.Add(reader.ReadUInt16());
  4251.         //        //    com.parameters.Add(reader.ReadUInt16()); //Zoom
  4252.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4253.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4254.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4255.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4256.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4257.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4258.         //        //    //com.parameters.Add(reader.ReadUInt16());
  4259.         //        //    break;
  4260.         //        case 0x13F:
  4261.         //            com.Name = "StartCameraEvent";
  4262.         //            break;
  4263.         //        case 0x140:
  4264.         //            com.Name = "StopCameraEvent";
  4265.         //            break;
  4266.         //        case 0x141:
  4267.         //            com.Name = "LockCamera";
  4268.         //            break;
  4269.         //        case 0x142:
  4270.         //            com.Name = "ReleaseCamera";
  4271.         //            break;
  4272.         //        case 0x143:
  4273.         //            com.Name = "MoveCamera";
  4274.         //            com.parameters.Add(reader.ReadUInt16()); //Elevation
  4275.         //            com.parameters.Add(reader.ReadUInt16()); //Rotation
  4276.         //            com.parameters.Add(reader.ReadUInt16());
  4277.         //            com.parameters.Add(reader.ReadUInt16()); //Zoom
  4278.         //            com.parameters.Add(reader.ReadUInt16());
  4279.         //            com.parameters.Add(reader.ReadUInt16());
  4280.         //            com.parameters.Add(reader.ReadUInt16());
  4281.         //            com.parameters.Add(reader.ReadUInt16());
  4282.         //            com.parameters.Add(reader.ReadUInt16());
  4283.         //            com.parameters.Add(reader.ReadUInt16());
  4284.         //            com.parameters.Add(reader.ReadUInt16());
  4285.         //            break;
  4286.         //        case 0x144:
  4287.         //            com.Name = "144";
  4288.         //            com.parameters.Add(reader.ReadUInt16()); //Elevation
  4289.         //            break;
  4290.         //        case 0x145:
  4291.         //            com.Name = "EndCameraEvent";
  4292.         //            break;
  4293.         //        case 0x147:
  4294.         //            com.Name = "ResetCamera";
  4295.         //            com.parameters.Add(reader.ReadUInt16());
  4296.         //            com.parameters.Add(reader.ReadUInt16());
  4297.         //            com.parameters.Add(reader.ReadUInt16());
  4298.         //            com.parameters.Add(reader.ReadUInt16());
  4299.         //            com.parameters.Add(reader.ReadUInt16());
  4300.         //            break;
  4301.         //        case 0x148:
  4302.         //            com.Name = "BumpingCamera";
  4303.         //            com.parameters.Add(reader.ReadUInt16()); //Intensità X
  4304.         //            com.parameters.Add(reader.ReadUInt16()); //Intensità Y
  4305.         //            com.parameters.Add(reader.ReadUInt16()); //Speed
  4306.         //            com.parameters.Add(reader.ReadUInt16()); //Degradation
  4307.         //            com.parameters.Add(reader.ReadUInt16()); //Changing Speed (From Bumping X to Y)
  4308.         //            com.parameters.Add(reader.ReadUInt16());
  4309.         //            com.parameters.Add(reader.ReadUInt16());
  4310.         //            com.parameters.Add(reader.ReadUInt16());
  4311.         //            break;
  4312.         //        case 0x149:
  4313.         //            com.Name = "149";
  4314.         //            com.parameters.Add(reader.ReadUInt16());
  4315.         //            com.parameters.Add(reader.ReadUInt16());
  4316.         //            break;
  4317.         //        case 0x14B:
  4318.         //            com.Name = "CallStart";
  4319.         //            break;
  4320.         //        case 0x14A:
  4321.         //            com.Name = "CallEnd";
  4322.         //            break;
  4323.         //        case 0x14D:
  4324.         //            com.Name = "14D";
  4325.         //            com.parameters.Add(reader.ReadUInt16());
  4326.         //            com.parameters.Add(reader.ReadUInt16());
  4327.         //            break;
  4328.         //        case 0x14E:
  4329.         //            com.Name = "ChooseInterestingItem";
  4330.         //            com.parameters.Add(reader.ReadUInt16());
  4331.         //            com.parameters.Add(reader.ReadUInt16());
  4332.         //            com.parameters.Add(reader.ReadUInt16());
  4333.         //            break;
  4334.         //        case 0x14F:
  4335.         //            com.Name = "14F";
  4336.         //            com.parameters.Add(reader.ReadUInt16());
  4337.         //            com.parameters.Add(reader.ReadUInt16());
  4338.         //            break;
  4339.         //        case 0x150:
  4340.         //            com.Name = "150";
  4341.         //            com.parameters.Add(reader.ReadUInt16());
  4342.         //            break;
  4343.         //        case 0x151:
  4344.         //            com.Name = "ShowDiploma";
  4345.         //            com.parameters.Add(reader.ReadUInt16());
  4346.         //            com.parameters.Add(reader.ReadUInt16());
  4347.         //            break;
  4348.         //        case 0x154:
  4349.         //            com.Name = "LibertyShipAnm";
  4350.         //            com.parameters.Add(reader.ReadUInt16());
  4351.         //            com.parameters.Add(reader.ReadUInt16());
  4352.         //            break;
  4353.         //        case 0x155:
  4354.         //            com.Name = "OpenInterpokè";
  4355.         //            com.parameters.Add(reader.ReadUInt16());
  4356.         //            com.parameters.Add(reader.ReadUInt16());
  4357.         //            break;
  4358.         //        case 0x156:
  4359.         //            com.Name = "156";
  4360.         //            com.parameters.Add(reader.ReadUInt16());
  4361.         //            break;
  4362.         //        case 0x158:
  4363.         //            com.Name = "158";
  4364.         //            com.parameters.Add(reader.ReadUInt16());
  4365.         //            com.parameters.Add(reader.ReadUInt16());
  4366.         //            break;
  4367.         //        //case 0x159:
  4368.         //        //    com.Name = "159";
  4369.         //        //    com.parameters.Add(reader.ReadUInt16());
  4370.         //        //    break;
  4371.         //        case 0x15A:
  4372.         //            com.Name = "15A";
  4373.         //            com.parameters.Add(reader.ReadUInt16());
  4374.         //            com.parameters.Add(reader.ReadUInt16());
  4375.         //            com.parameters.Add(reader.ReadUInt16());
  4376.         //            com.parameters.Add(reader.ReadUInt16());
  4377.         //            break;
  4378.         //        //case 0x15B:
  4379.         //        //    com.Name = "15B";
  4380.         //        //    com.parameters.Add(reader.ReadByte());
  4381.         //        //    break;
  4382.         //        //case 0x15C:
  4383.         //        //    com.Name = "15C";
  4384.         //        //    com.parameters.Add(reader.ReadByte());
  4385.         //        //    break;
  4386.         //        case 0x15F:
  4387.         //            com.Name = "CheckFriend";
  4388.         //            com.parameters.Add(reader.ReadUInt16());
  4389.         //            break;
  4390.         //        case 0x160:
  4391.         //            com.Name = "160";
  4392.         //            com.parameters.Add(reader.ReadUInt16());
  4393.         //            break;
  4394.         //        //case 0x15C:
  4395.         //        //    com.Name = "15C";
  4396.         //        //    com.parameters.Add(reader.ReadByte());
  4397.         //        //    break;
  4398.         //        //case 0x163:
  4399.         //        //    com.Name = "163";
  4400.         //        //    com.parameters.Add(reader.ReadUInt16());
  4401.         //        //    com.parameters.Add(reader.ReadByte());
  4402.         //        //    break;
  4403.         //        case 0x164:
  4404.         //            com.Name = "164";
  4405.         //            com.parameters.Add(reader.ReadUInt16());
  4406.         //            com.parameters.Add(reader.ReadUInt16());
  4407.         //            break;
  4408.         //        case 0x165:
  4409.         //            com.Name = "165";
  4410.         //            com.parameters.Add(reader.ReadUInt16());
  4411.         //            break;
  4412.         //        //case 0x166:
  4413.         //        //    com.Name = "166";
  4414.         //        //    com.parameters.Add(reader.ReadByte());
  4415.         //        //    com.parameters.Add(reader.ReadUInt16());
  4416.         //        //    com.parameters.Add(reader.ReadUInt16());
  4417.         //        //    break;
  4418.         //        case 0x167:
  4419.         //            com.Name = "StartPokèmonMusical";
  4420.         //            com.parameters.Add(reader.ReadByte());
  4421.         //            com.parameters.Add(reader.ReadUInt16());
  4422.         //            //com.parameters.Add(reader.ReadUInt16());
  4423.         //            //com.parameters.Add(reader.ReadUInt16());
  4424.         //            break;
  4425.         //        case 0x168:
  4426.         //            com.Name = "StartDressPokèmonMusical";
  4427.         //            com.parameters.Add(reader.ReadUInt16());
  4428.         //            break;
  4429.         //        case 0x169:
  4430.         //            com.Name = "CheckPokèmonMusicalFunctions";
  4431.         //            com.parameters.Add(reader.ReadByte());
  4432.         //            com.parameters.Add(reader.ReadUInt16());
  4433.         //            com.parameters.Add(reader.ReadUInt16());
  4434.         //            break;
  4435.         //        case 0x16A:
  4436.         //            com.Name = "16A";
  4437.         //            com.parameters.Add(reader.ReadByte());
  4438.         //            com.parameters.Add(reader.ReadUInt16());
  4439.         //            com.parameters.Add(reader.ReadUInt16());
  4440.         //            break;
  4441.         //        case 0x16B:
  4442.         //            com.Name = "PokèmonMenuMusicalFunctions";
  4443.         //            com.parameters.Add(reader.ReadUInt16());
  4444.         //            com.parameters.Add(reader.ReadUInt16());
  4445.         //            com.parameters.Add(reader.ReadUInt16());
  4446.         //            com.parameters.Add(reader.ReadUInt16());
  4447.         //            break;
  4448.         //        case 0x16C:
  4449.         //            com.Name = "16C";
  4450.         //            com.parameters.Add(reader.ReadUInt16());
  4451.         //            break;
  4452.         //        case 0x16D:
  4453.         //            com.Name = "16D";
  4454.         //            com.parameters.Add(reader.ReadUInt16());
  4455.         //            break;
  4456.         //        case 0x16E:
  4457.         //            com.Name = "ChoosePokèmonMusical";
  4458.         //            com.parameters.Add(reader.ReadUInt16());
  4459.         //            com.parameters.Add(reader.ReadUInt16());
  4460.         //            break;
  4461.         //        case 0x16F:
  4462.         //            com.Name = "16F";
  4463.         //            break;
  4464.         //        case 0x170:
  4465.         //            com.Name = "170";
  4466.         //            com.parameters.Add(reader.ReadUInt16());
  4467.         //            break;
  4468.         //        case 0x171:
  4469.         //            com.Name = "171";
  4470.         //            break;
  4471.         //        case 0x172:
  4472.         //            com.Name = "172";
  4473.         //            com.parameters.Add(reader.ReadUInt16());
  4474.         //            break;
  4475.         //        case 0x173:
  4476.         //            com.Name = "173";
  4477.         //            com.parameters.Add(reader.ReadUInt16());
  4478.         //            break;
  4479.         //        case 0x174:
  4480.         //            com.Name = "174";
  4481.         //            com.parameters.Add(reader.ReadUInt16()); //Dex
  4482.         //            com.parameters.Add(reader.ReadUInt16()); //Level
  4483.         //            com.parameters.Add(reader.ReadUInt16()); //Unk
  4484.         //            break;
  4485.         //        case 0x175:
  4486.         //            com.Name = "175";
  4487.         //            com.parameters.Add(reader.ReadUInt16());
  4488.         //            break;
  4489.         //        case 0x176:
  4490.         //            com.Name = "176";
  4491.         //            com.parameters.Add(reader.ReadUInt16());
  4492.         //            if (scriptType == Constants.BW2SCRIPT)
  4493.         //                com.parameters.Add(reader.ReadUInt16());
  4494.         //            break;
  4495.         //        case 0x177:
  4496.         //            com.Name = "177";
  4497.         //            if (scriptType == Constants.BW2SCRIPT)
  4498.         //                com.parameters.Add(reader.ReadUInt16());
  4499.         //            break;
  4500.         //        case 0x178:
  4501.         //            com.Name = "WildPokèmonBattle";       // 364 0=captured, might output 1 & 2 for something else
  4502.         //            com.parameters.Add(reader.ReadUInt16()); //variable to store result to
  4503.         //            com.parameters.Add(reader.ReadUInt16());
  4504.         //            com.parameters.Add(reader.ReadUInt16());
  4505.         //            break;
  4506.         //        case 0x179:
  4507.         //            com.Name = "EndWildBattle";
  4508.         //            break;
  4509.         //        case 0x17A:
  4510.         //            com.Name = "LooseWildBattle";
  4511.         //            break;
  4512.         //        case 0x17B:
  4513.         //            com.Name = "StoreWildBattleResult";
  4514.         //            com.parameters.Add(reader.ReadUInt16());
  4515.         //            break;
  4516.         //        case 0x17C:
  4517.         //            com.Name = "StoreWildBattlePokèmonStatus";
  4518.         //            com.parameters.Add(reader.ReadUInt16());
  4519.         //            break;
  4520.         //        //case 0x17D:
  4521.         //        //    com.Name = "17D";
  4522.         //        //    com.parameters.Add(reader.ReadUInt16());
  4523.         //        //    break;
  4524.         //        //case 0x17E:
  4525.         //        //    com.Name = "17E";
  4526.         //        //    com.parameters.Add(reader.ReadUInt16());
  4527.         //        //    break;
  4528.         //        case 0x17F:
  4529.         //            com.Name = "17F";
  4530.         //            com.parameters.Add(reader.ReadUInt16());
  4531.         //            com.parameters.Add(reader.ReadUInt16());
  4532.         //            break;
  4533.         //        case 0x180:
  4534.         //            com.Name = "NimbasaGymRailAnimation";
  4535.         //            com.parameters.Add(reader.ReadUInt16());
  4536.         //            break;
  4537.         //        //case 0x181:
  4538.         //        //    com.Name = "181";
  4539.         //        //    com.parameters.Add(reader.ReadUInt16());
  4540.         //        //    break;
  4541.         //        case 0x182:
  4542.         //            com.Name = "182";
  4543.         //            com.parameters.Add(reader.ReadUInt16());
  4544.         //            break;
  4545.         //        //case 0x183:
  4546.         //        //    com.Name = "183";
  4547.         //        //    com.parameters.Add(reader.ReadUInt16());
  4548.         //        //    break;
  4549.         //        //case 0x184:
  4550.         //        //    com.Name = "184";
  4551.         //        //    com.parameters.Add(reader.ReadUInt16());
  4552.         //        //    break;
  4553.         //        //case 0x185:
  4554.         //        //    com.Name = "185";
  4555.         //        //    com.parameters.Add(reader.ReadUInt16());
  4556.         //        //    break;
  4557.         //        case 0x186:
  4558.         //            com.Name = "186";
  4559.         //            com.parameters.Add(reader.ReadUInt16());
  4560.         //            break;
  4561.         //        case 0x187:
  4562.         //            com.Name = "187";
  4563.         //            com.parameters.Add(reader.ReadUInt16());
  4564.         //            com.parameters.Add(reader.ReadUInt16());
  4565.         //            break;
  4566.         //        case 0x188:
  4567.         //            com.Name = "188";
  4568.         //            com.parameters.Add(reader.ReadUInt16());
  4569.         //            break;
  4570.         //        case 0x189:
  4571.         //            com.Name = "189";
  4572.         //            com.parameters.Add(reader.ReadUInt16());
  4573.         //            break;
  4574.         //        //case 0x18A:
  4575.         //        //    com.Name = "18A";
  4576.         //        //    com.parameters.Add(reader.ReadUInt16());
  4577.         //        //    break;
  4578.         //        //case 0x18B:
  4579.         //        //    com.Name = "18B";
  4580.         //        //    com.parameters.Add(reader.ReadUInt16());
  4581.         //        //    break;
  4582.         //        case 0x18C:
  4583.         //            com.Name = "18C";
  4584.         //            com.parameters.Add(reader.ReadUInt16());
  4585.         //            //com.parameters.Add(reader.ReadUInt16());
  4586.         //            //com.parameters.Add(reader.ReadUInt16());
  4587.         //            //com.parameters.Add(reader.ReadUInt16());
  4588.         //            break;
  4589.         //        case 0x18D:
  4590.         //            com.Name = "18D";
  4591.         //            com.parameters.Add(reader.ReadUInt16());
  4592.         //            break;
  4593.         //        case 0x18E:
  4594.         //            com.Name = "18E";
  4595.         //            com.parameters.Add(reader.ReadUInt16());
  4596.         //            break;
  4597.         //        case 0x18F:
  4598.         //            com.parameters.Add(reader.ReadUInt16());
  4599.         //            com.parameters.Add(reader.ReadUInt16());
  4600.         //            com.parameters.Add(reader.ReadUInt16());
  4601.         //            com.parameters.Add(reader.ReadUInt16());
  4602.         //            com.parameters.Add(reader.ReadUInt16());
  4603.         //            com.parameters.Add(reader.ReadUInt16());
  4604.         //            com.parameters.Add(reader.ReadUInt16());
  4605.         //            com.parameters.Add(reader.ReadUInt16());
  4606.         //            break;
  4607.         //        case 0x190:
  4608.         //            com.Name = "DriftGymLiftAnmSecondRoom";
  4609.         //            com.parameters.Add(reader.ReadUInt16());
  4610.         //            break;
  4611.         //        case 0x191:
  4612.         //            com.Name = "191";
  4613.         //            com.parameters.Add(reader.ReadUInt16());
  4614.         //            break;
  4615.         //        case 0x192:
  4616.         //            com.Name = "DriftGymLiftAnmFirstRoom";
  4617.         //            com.parameters.Add(reader.ReadUInt16());
  4618.         //            break;
  4619.         //        //case 0x193:
  4620.         //        //    com.Name = "193";
  4621.         //        //    break;
  4622.         //        //case 0x195:
  4623.         //        //    com.Name = "195";
  4624.         //        //    break;
  4625.         //        //case 0x199:
  4626.         //        //    com.Name = "199";
  4627.         //        //    com.parameters.Add(reader.ReadUInt16());
  4628.         //        //    break;
  4629.         //        case 0x19B:
  4630.         //            com.Name = "SetStatusCG";
  4631.         //            com.parameters.Add(reader.ReadUInt16());
  4632.         //            break;
  4633.         //        case 0x19C:
  4634.         //            com.parameters.Add(reader.ReadUInt16());
  4635.         //            break;
  4636.         //        case 0x19D:
  4637.         //            com.Name = "19D";
  4638.         //            break;
  4639.         //        case 0x19E:
  4640.         //            com.Name = "ShowCG";
  4641.         //            com.parameters.Add(reader.ReadUInt16());
  4642.         //            break;
  4643.         //        case 0x19F:
  4644.         //            com.Name = "CallScreenAnimation";
  4645.         //            com.parameters.Add(reader.ReadUInt16()); //AnimationId
  4646.         //            break;
  4647.         //        case 0x1A0:
  4648.         //            com.Name = "1A0";
  4649.         //            com.parameters.Add(reader.ReadUInt16());
  4650.         //            break;
  4651.         //        case 0x1A1:
  4652.         //            com.Name = "OpenXtransciever(1A1)";
  4653.         //            com.parameters.Add(reader.ReadUInt16());
  4654.         //            //com.parameters.Add(reader.ReadUInt16());
  4655.         //            //com.parameters.Add(reader.ReadUInt16());
  4656.         //            //com.parameters.Add(reader.ReadUInt16()); // container
  4657.         //            break;
  4658.         //        case 0x1A3:
  4659.         //            com.Name = "FlashBlackInstant";
  4660.         //            break;
  4661.         //        case 0x1A4:
  4662.         //            com.Name = "1A4";
  4663.         //            com.parameters.Add(reader.ReadUInt16());
  4664.         //            break;
  4665.         //        //case 0x1A5:
  4666.         //        //    com.Name = "Xtransciever5 (0x1A5)";
  4667.         //        //    break;
  4668.         //        //case 0x1A6:
  4669.         //        //    com.Name = "Xtransciever6 (0x1A6)";
  4670.         //        //    com.parameters.Add(reader.ReadUInt16());
  4671.         //        //    com.parameters.Add(reader.ReadUInt16());
  4672.         //        //    com.parameters.Add(reader.ReadUInt16());
  4673.         //        //    break;
  4674.         //        case 0x1A7:
  4675.         //            com.Name = "1A7";
  4676.         //            //com.parameters.Add(reader.ReadUInt16());
  4677.         //            //com.parameters.Add(reader.ReadUInt16());
  4678.         //            break;
  4679.         //        //case 0x1A8:
  4680.         //        //    com.parameters.Add(reader.ReadUInt16());
  4681.         //        //    com.parameters.Add(reader.ReadUInt16());
  4682.         //        //    com.parameters.Add(reader.ReadUInt16());
  4683.         //        //    break;
  4684.         //        case 0x1A9:
  4685.         //            com.Name = "1A9";
  4686.         //            com.parameters.Add(reader.ReadUInt16());
  4687.         //            com.parameters.Add(reader.ReadUInt16());
  4688.         //            com.parameters.Add(reader.ReadUInt16());
  4689.         //            com.parameters.Add(reader.ReadUInt16());
  4690.         //            break;
  4691.         //        case 0x1AA:
  4692.         //            com.Name = "1AA";
  4693.         //            com.parameters.Add(reader.ReadUInt16());
  4694.         //            com.parameters.Add(reader.ReadUInt16());
  4695.         //            com.parameters.Add(reader.ReadUInt16());
  4696.         //            com.parameters.Add(reader.ReadUInt16());
  4697.         //            break;
  4698.         //        case 0x1AB:
  4699.         //            com.Name = "FadeFromBlack";
  4700.         //            break;
  4701.         //        case 0x1AC:
  4702.         //            com.Name = "FadeIntoBlack";
  4703.         //            break;
  4704.         //        case 0x1AD:
  4705.         //            com.Name = "FadeFromWhite";
  4706.         //            break;
  4707.         //        case 0x1AE:
  4708.         //            com.Name = "FadeIntoWhite";
  4709.         //            break;
  4710.         //        //case 0x1AF:
  4711.         //        //    com.Name = "1AF";
  4712.         //        //    com.parameters.Add(reader.ReadUInt16());
  4713.         //        //    com.parameters.Add(reader.ReadUInt16());
  4714.         //        //    break;
  4715.         //        case 0x1B1:
  4716.         //            com.Name = "ScreenFunction";
  4717.         //            break;
  4718.         //        //case 0x1B4:
  4719.         //        //    com.Name = "TradeNPCStart";
  4720.         //        //    com.parameters.Add(reader.ReadUInt16()); //Trade Entry to Trade For
  4721.         //        //    com.parameters.Add(reader.ReadUInt16()); //PKM Slot that gets traded away FOREVER!
  4722.         //        //    break;
  4723.         //        //case 0x1B5:
  4724.         //        //    com.Name = "TradeNPCQualify";
  4725.         //        //    com.parameters.Add(reader.ReadUInt16()); //Logic Criterion (usually set to 0~true)
  4726.         //        //    com.parameters.Add(reader.ReadUInt16()); //Trade Criterion
  4727.         //        //    com.parameters.Add(reader.ReadUInt16()); //Offered PKM
  4728.         //        //    break;
  4729.         //        case 0x1B5:
  4730.         //            com.Name = "1B5";
  4731.         //            break;
  4732.         //        case 0x1B6:
  4733.         //            com.Name = "1B6";
  4734.         //            break;
  4735.         //        case 0x1B9:
  4736.         //            com.parameters.Add(reader.ReadUInt16());
  4737.         //            com.parameters.Add(reader.ReadUInt16());
  4738.         //            break;
  4739.         //        case 0x1BA:
  4740.         //            com.Name = "1BA";
  4741.         //            com.parameters.Add(reader.ReadUInt16());
  4742.         //            com.parameters.Add(reader.ReadUInt16());
  4743.         //            break;
  4744.         //        case 0x1BB:
  4745.         //            com.Name = "1BB";
  4746.         //            break;
  4747.         //        //case 0x1BD:
  4748.         //        //    com.parameters.Add(reader.ReadUInt16());
  4749.         //        //    com.parameters.Add(reader.ReadUInt16());
  4750.         //        //    break;
  4751.         //        case 0x1BE:
  4752.         //            com.Name = "TradePokèmon";
  4753.         //            com.parameters.Add(reader.ReadUInt16());
  4754.         //            com.parameters.Add(reader.ReadUInt16());
  4755.         //            break;
  4756.         //        case 0x1BF:
  4757.         //            com.Name = "CompareChosenPokemon";
  4758.         //            com.parameters.Add(reader.ReadUInt16());//RV = True if is equal
  4759.         //            com.parameters.Add(reader.ReadUInt16());//Id chosen Pokèmon
  4760.         //            com.parameters.Add(reader.ReadUInt16());//Id requested Pokèmon
  4761.         //            break;
  4762.         //        case 0x1C0:
  4763.         //            com.Name = "1C0";
  4764.         //            break;
  4765.         //        case 0x1C1:
  4766.         //            com.Name = "1C1";
  4767.         //            com.parameters.Add(reader.ReadByte());
  4768.         //            com.parameters.Add(reader.ReadUInt16());
  4769.         //            break;
  4770.         //        case 0x1C2:
  4771.         //            com.Name = "StartEventBC";
  4772.         //            break;
  4773.         //        case 0x1C3:
  4774.         //            com.Name = "EndEventBC";
  4775.         //            break;
  4776.         //        case 0x1C4:
  4777.         //            com.Name = "StoreTrainerID";
  4778.         //            com.parameters.Add(reader.ReadUInt16());
  4779.         //            com.parameters.Add(reader.ReadUInt16());
  4780.         //            break;
  4781.         //        //case 0x1C5:
  4782.         //        //    com.Name = "1C5";
  4783.         //        //    com.parameters.Add(reader.ReadUInt16());
  4784.         //        //    var next1C5 = reader.ReadUInt16();
  4785.         //        //    while (next1C5 >= 0x4000) { com.parameters.Add(next1C5); next1C5 = reader.ReadUInt16(); }
  4786.         //        //    reader.BaseStream.Position -= 2;
  4787.         //        //    break;
  4788.         //        //case 0x1C6:
  4789.         //        //    com.Name = "StorePokemonCaughtWF";
  4790.         //        //    com.parameters.Add(reader.ReadUInt16()); //True if is Pokèmon searched
  4791.         //        //    com.parameters.Add(reader.ReadUInt16()); //True if is caught the same day
  4792.         //        //    com.parameters.Add(reader.ReadUInt16());
  4793.         //        //    break;
  4794.         //        //case 0x1C7:
  4795.         //        //    com.Name = "1C7";
  4796.         //        //    com.parameters.Add(reader.ReadUInt16());
  4797.         //        //    break;
  4798.         //        case 0x1C9:
  4799.         //            com.Name = "StoreVarMessage";
  4800.         //            com.parameters.Add(reader.ReadUInt16()); //Variable as Container
  4801.         //            com.parameters.Add(reader.ReadUInt16()); //Message Id
  4802.         //            break;
  4803.         //        case 0x1CB:
  4804.         //            com.Name = "1CB";
  4805.         //            com.parameters.Add(reader.ReadUInt16());
  4806.         //            com.parameters.Add(reader.ReadUInt16());
  4807.         //            break;
  4808.         //        //case 0x1CC:
  4809.         //        //    com.parameters.Add(reader.ReadUInt16());
  4810.         //        //    break;
  4811.         //        //case 0x1CD:
  4812.         //        //    com.parameters.Add(reader.ReadUInt16());
  4813.         //        //    break;
  4814.         //        case 0x1CE:
  4815.         //            com.Name = "CheckPokèdexStatus";
  4816.         //            com.parameters.Add(reader.ReadUInt16());
  4817.         //            com.parameters.Add(reader.ReadUInt16());
  4818.         //            break;
  4819.         //        case 0x1CF:
  4820.         //            com.Name = "StorePokèdexCaught";
  4821.         //            com.parameters.Add(reader.ReadUInt16());
  4822.         //            com.parameters.Add(reader.ReadUInt16());
  4823.         //            com.parameters.Add(reader.ReadUInt16());
  4824.         //            break;
  4825.         //        //case 0x1D0:
  4826.         //        //    com.Name = "1D0";
  4827.         //        //    com.parameters.Add(reader.ReadUInt16());
  4828.         //        //    com.parameters.Add(reader.ReadUInt16());
  4829.         //        //    com.parameters.Add(reader.ReadUInt16());
  4830.         //        //    com.parameters.Add(reader.ReadUInt16());
  4831.         //        //    break;
  4832.         //        //case 0x1D1:
  4833.         //        //    com.parameters.Add(reader.ReadUInt16());
  4834.         //        //    com.parameters.Add(reader.ReadUInt16());
  4835.         //        //    break;
  4836.         //        //case 0x1D2:
  4837.         //        //    com.parameters.Add(reader.ReadUInt16());
  4838.         //        //    com.parameters.Add(reader.ReadUInt16());
  4839.         //        //    com.parameters.Add(reader.ReadUInt16());
  4840.         //        //    break;
  4841.         //        case 0x1D3:
  4842.         //            com.parameters.Add(reader.ReadUInt16());
  4843.         //            com.parameters.Add(reader.ReadUInt16());
  4844.         //            com.parameters.Add(reader.ReadUInt16());
  4845.         //            break;
  4846.         //        case 0x1D4:
  4847.         //            break;
  4848.         //        //case 0x1D5:
  4849.         //        //    com.parameters.Add(reader.ReadUInt16());
  4850.         //        //    com.parameters.Add(reader.ReadUInt16());
  4851.         //        //    break;
  4852.         //        case 0x1D6:
  4853.         //            com.Name = "AffinityCheck";
  4854.         //            com.parameters.Add(reader.ReadUInt16());
  4855.         //            break;
  4856.         //        case 0x1D7:
  4857.         //            com.Name = "SetVarAffinityCheck";
  4858.         //            com.parameters.Add(reader.ReadUInt16());
  4859.         //            break;
  4860.         //        case 0x1D8:
  4861.         //            com.parameters.Add(reader.ReadUInt16());
  4862.         //            com.parameters.Add(reader.ReadUInt16());
  4863.         //            //com.parameters.Add(reader.ReadUInt16());
  4864.         //            //com.parameters.Add(reader.ReadUInt16());
  4865.         //            break;
  4866.         //        case 0x1D9:
  4867.         //            com.Name = "1D9";
  4868.         //            com.parameters.Add(reader.ReadUInt16());
  4869.         //            if (scriptType == Constants.BW2SCRIPT)
  4870.         //                com.parameters.Add(reader.ReadUInt16());
  4871.         //            break;
  4872.         //        case 0x1DA:
  4873.         //            com.Name = "1DA";
  4874.         //            com.parameters.Add(reader.ReadUInt16());
  4875.         //            com.parameters.Add(reader.ReadUInt16());
  4876.         //            break;
  4877.         //        case 0x1DB:
  4878.         //            com.Name = "1DB";
  4879.         //            com.parameters.Add(reader.ReadUInt16());
  4880.         //            break;
  4881.         //        case 0x1DC:
  4882.         //            com.Name = "1DC";
  4883.         //            com.parameters.Add(reader.ReadUInt16());
  4884.         //            com.parameters.Add(reader.ReadUInt16());
  4885.         //            break;
  4886.         //        case 0x1DD:
  4887.         //            com.Name = "1DD";
  4888.         //            com.parameters.Add(reader.ReadUInt16());
  4889.         //            com.parameters.Add(reader.ReadUInt16());
  4890.         //            break;
  4891.         //        case 0x1DE:
  4892.         //            com.Name = "StoreDataUnity";
  4893.         //            com.parameters.Add(reader.ReadUInt16());
  4894.         //            com.parameters.Add(reader.ReadUInt16());
  4895.         //            break;
  4896.         //        case 0x1DF:
  4897.         //            com.Name = "1DF";
  4898.         //            com.parameters.Add(reader.ReadUInt16());
  4899.         //            com.parameters.Add(reader.ReadUInt16());
  4900.         //            com.parameters.Add(reader.ReadUInt16());
  4901.         //            break;
  4902.         //        case 0x1E0:
  4903.         //            com.Name = "ChooseUnityFloor";
  4904.         //            com.parameters.Add(reader.ReadUInt16());
  4905.         //            com.parameters.Add(reader.ReadUInt16());
  4906.         //            com.parameters.Add(reader.ReadUInt16());
  4907.         //            com.parameters.Add(reader.ReadUInt16());
  4908.         //            break;
  4909.         //        case 0x1E1:
  4910.         //            com.Name = "StoreTrainerUnity";
  4911.         //            com.parameters.Add(reader.ReadUInt16());
  4912.         //            break;
  4913.         //        //case 0x1E2:
  4914.         //        //    com.Name = "1E3";
  4915.         //        //    break;
  4916.         //        case 0x1E3:
  4917.         //            com.Name = "StoreUnityActivities";
  4918.         //            com.parameters.Add(reader.ReadUInt16());
  4919.         //            break;
  4920.         //        case 0x1E4:
  4921.         //            com.Name = "StoreCanTeachDragonMove";
  4922.         //            com.parameters.Add(reader.ReadUInt16());
  4923.         //            com.parameters.Add(reader.ReadUInt16());
  4924.         //            break;
  4925.         //        case 0x1E5:
  4926.         //            com.Name = "StorePokèmonStatusDragonMove";
  4927.         //            com.parameters.Add(reader.ReadUInt16());
  4928.         //            com.parameters.Add(reader.ReadUInt16());
  4929.         //            com.parameters.Add(reader.ReadUInt16());
  4930.         //            break;
  4931.         //        case 0x1E6:
  4932.         //            com.Name = "1E6";
  4933.         //            com.parameters.Add(reader.ReadUInt16());
  4934.         //            com.parameters.Add(reader.ReadUInt16());
  4935.         //            com.parameters.Add(reader.ReadUInt16());
  4936.         //            break;
  4937.         //        case 0x1E7:
  4938.         //            com.Name = "StoreChosenPokèmonDragonMove";
  4939.         //            com.parameters.Add(reader.ReadUInt16());
  4940.         //            com.parameters.Add(reader.ReadUInt16());
  4941.         //            com.parameters.Add(reader.ReadUInt16());
  4942.         //            break;
  4943.         //        case 0x1E8:
  4944.         //            com.Name = "CheckRememberMove";
  4945.         //            com.parameters.Add(reader.ReadUInt16());
  4946.         //            com.parameters.Add(reader.ReadUInt16());
  4947.         //            break;
  4948.         //        case 0x1E9:
  4949.         //            com.Name = "StoreRememberMove";
  4950.         //            com.parameters.Add(reader.ReadUInt16());
  4951.         //            com.parameters.Add(reader.ReadUInt16());
  4952.         //            break;
  4953.         //        case 0x1EA:
  4954.         //            com.Name = "1EA";
  4955.         //            com.parameters.Add(reader.ReadUInt16());
  4956.         //            com.parameters.Add(reader.ReadUInt16());
  4957.         //            com.parameters.Add(reader.ReadUInt16());
  4958.         //            com.parameters.Add(reader.ReadUInt16());
  4959.         //            break;
  4960.         //        case 0x1EB:
  4961.         //            com.Name = "1EB";
  4962.         //            com.parameters.Add(reader.ReadUInt16());
  4963.         //            com.parameters.Add(reader.ReadUInt16());
  4964.         //            com.parameters.Add(reader.ReadUInt16());
  4965.         //            com.parameters.Add(reader.ReadUInt16());
  4966.         //            break;
  4967.         //        case 0x1EC:
  4968.         //            com.Name = "SwitchOwPosition";
  4969.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  4970.         //            com.parameters.Add(reader.ReadUInt16()); //NPC Id
  4971.         //            com.parameters.Add(reader.ReadUInt16()); //X Coordinate
  4972.         //            com.parameters.Add(reader.ReadUInt16()); //Y Coordinate
  4973.         //            com.parameters.Add(reader.ReadUInt16()); //Z Coordinate
  4974.         //            break;
  4975.         //        case 0x1ED:
  4976.         //            com.Name = "DoublePhraseBoxInput";
  4977.         //            com.parameters.Add(reader.ReadUInt16());
  4978.         //            com.parameters.Add(reader.ReadUInt16());
  4979.         //            com.parameters.Add(reader.ReadUInt16());
  4980.         //            com.parameters.Add(reader.ReadUInt16());
  4981.         //            break;
  4982.         //        case 0x1EE:
  4983.         //            com.Name = "1EE";
  4984.         //            com.parameters.Add(reader.ReadUInt16());
  4985.         //            com.parameters.Add(reader.ReadUInt16());
  4986.         //            break;
  4987.         //        case 0x1EF:
  4988.         //            com.parameters.Add(reader.ReadUInt16());
  4989.         //            com.parameters.Add(reader.ReadUInt16());
  4990.         //            break;
  4991.         //        case 0x1F0:
  4992.         //            com.Name = "HMEffect";
  4993.         //            com.parameters.Add(reader.ReadUInt16());
  4994.         //            com.parameters.Add(reader.ReadUInt16());
  4995.         //            break;
  4996.         //        case 0x1F1:
  4997.         //            com.Name = "1F1";
  4998.         //            com.parameters.Add(reader.ReadUInt16());
  4999.         //            com.parameters.Add(reader.ReadUInt16());
  5000.         //            break;
  5001.         //        case 0x1F2:
  5002.         //            com.Name = "1F2";
  5003.         //            break;
  5004.         //        //case 0x1F4:
  5005.         //        //    com.Name = "1F4";
  5006.         //        //    com.parameters.Add(reader.ReadUInt16());
  5007.         //        //    com.parameters.Add(reader.ReadUInt16());
  5008.         //        //    break;
  5009.         //        case 0x1F3:
  5010.         //            com.Name = "1F3";
  5011.         //            com.parameters.Add(reader.ReadUInt16());
  5012.         //            com.parameters.Add(reader.ReadUInt16());
  5013.         //            com.parameters.Add(reader.ReadUInt16());
  5014.         //            com.parameters.Add(reader.ReadUInt16());
  5015.         //            break;
  5016.         //        case 0x1F6:
  5017.         //            com.Name = "1F6";
  5018.         //            com.parameters.Add(reader.ReadUInt16()); // 0
  5019.         //            com.parameters.Add(reader.ReadUInt16()); // 0
  5020.         //            com.parameters.Add(reader.ReadUInt16()); // 0
  5021.         //            break;
  5022.         //        case 0x1F7:
  5023.         //            com.Name = "1F7";
  5024.         //            com.parameters.Add(reader.ReadUInt16());
  5025.         //            com.parameters.Add(reader.ReadUInt16());
  5026.         //            com.parameters.Add(reader.ReadUInt16());
  5027.         //            com.parameters.Add(reader.ReadUInt16());
  5028.         //            com.parameters.Add(reader.ReadUInt16());
  5029.         //            com.parameters.Add(reader.ReadUInt16());
  5030.         //            break;
  5031.         //        //case 0x1F8:
  5032.         //        //    com.parameters.Add(reader.ReadUInt16());
  5033.         //        //    com.parameters.Add(reader.ReadUInt16());
  5034.         //        //    break;
  5035.         //        case 0x1F9:
  5036.         //            com.Name = "StartBattleExam";
  5037.         //            break;
  5038.         //        case 0x1FA:
  5039.         //            com.Name = "1FA";
  5040.         //            com.parameters.Add(reader.ReadUInt16());
  5041.         //            break;
  5042.         //        case 0x1FB:
  5043.         //            com.parameters.Add(reader.ReadUInt16());
  5044.         //            break;
  5045.         //        case 0x1FC:
  5046.         //            com.Name = "StoreBattleExamModality";
  5047.         //            com.parameters.Add(reader.ReadUInt16());
  5048.         //            com.parameters.Add(reader.ReadUInt16());
  5049.         //            com.parameters.Add(reader.ReadUInt16());
  5050.         //            break;
  5051.         //        case 0x1FD:
  5052.         //            com.parameters.Add(reader.ReadUInt16());
  5053.         //            com.parameters.Add(reader.ReadUInt16());
  5054.         //            if (scriptType == Constants.BW2SCRIPT)
  5055.         //            {
  5056.         //                com.parameters.Add(reader.ReadUInt16());
  5057.         //                com.parameters.Add(reader.ReadUInt16());
  5058.         //            }
  5059.         //            break;
  5060.         //        case 0x1FE:
  5061.         //            if (scriptType == Constants.BWSCRIPT)
  5062.         //            {
  5063.         //                com.parameters.Add(reader.ReadUInt16());
  5064.         //                com.parameters.Add(reader.ReadUInt16());
  5065.         //                com.parameters.Add(reader.ReadUInt16());
  5066.         //                com.parameters.Add(reader.ReadUInt16());
  5067.         //                com.parameters.Add(reader.ReadUInt16());
  5068.         //                com.parameters.Add(reader.ReadUInt16());
  5069.         //                com.parameters.Add(reader.ReadUInt16());
  5070.         //            }
  5071.         //            break;
  5072.         //        case 0x200:
  5073.         //            com.Name = "CheckBattleExamStarted";
  5074.         //            com.parameters.Add(reader.ReadUInt16());
  5075.         //            break;
  5076.         //        case 0x202:
  5077.         //            if (scriptType == Constants.BW2SCRIPT)
  5078.         //            {
  5079.         //                com.Name = "202";
  5080.         //                com.parameters.Add(reader.ReadUInt16());
  5081.         //                com.parameters.Add(reader.ReadUInt16());
  5082.         //            }
  5083.         //            else
  5084.         //            {
  5085.         //                com.Name = "StoreBattleExamStarNumber";
  5086.         //                com.parameters.Add(reader.ReadUInt16());
  5087.         //            }
  5088.         //            break;
  5089.         //        case 0x203:
  5090.         //            com.Name = "CheckBattleExamAvailable";
  5091.         //            com.parameters.Add(reader.ReadUInt16());
  5092.         //            break;
  5093.         //        case 0x204:
  5094.         //            com.Name = "StoreBattleExamLevel";
  5095.         //            com.parameters.Add(reader.ReadUInt16());
  5096.         //            com.parameters.Add(reader.ReadUInt16());
  5097.         //            break;
  5098.         //        case 0x205:
  5099.         //            com.Name = "StoreBattleExamType";
  5100.         //            com.parameters.Add(reader.ReadUInt16());
  5101.         //            break;
  5102.         //        case 0x206:
  5103.         //            com.Name = "SavingBookAnimation";
  5104.         //            com.parameters.Add(reader.ReadUInt16());
  5105.         //            break;
  5106.         //        case 0x207:
  5107.         //            com.Name = "ShowBattleExamResult";
  5108.         //            com.parameters.Add(reader.ReadUInt16());
  5109.         //            com.parameters.Add(reader.ReadUInt16());
  5110.         //            break;
  5111.         //        case 0x208:
  5112.         //            com.parameters.Add(reader.ReadUInt16());
  5113.         //            break;
  5114.         //        case 0x209:
  5115.         //            com.parameters.Add(reader.ReadUInt16());
  5116.         //            com.parameters.Add(reader.ReadUInt16());
  5117.         //            com.parameters.Add(reader.ReadUInt16());
  5118.         //            com.parameters.Add(reader.ReadUInt16());
  5119.         //            break;
  5120.         //        case 0x20A:
  5121.         //            com.parameters.Add(reader.ReadUInt16());
  5122.         //            com.parameters.Add(reader.ReadUInt16());
  5123.         //            com.parameters.Add(reader.ReadUInt16());
  5124.         //            com.parameters.Add(reader.ReadUInt16());
  5125.         //            break;
  5126.         //        case 0x20B:
  5127.         //            if (scriptType == Constants.BW2SCRIPT)
  5128.         //            {
  5129.         //                com.Name = "20B";
  5130.         //                com.parameters.Add(reader.ReadUInt16());
  5131.         //            }
  5132.         //            else
  5133.         //            {
  5134.         //                com.parameters.Add(reader.ReadUInt16());
  5135.         //                com.parameters.Add(reader.ReadUInt16());
  5136.         //            }
  5137.         //            break;
  5138.         //        case 0x20C:
  5139.         //            if (scriptType == Constants.BW2SCRIPT)
  5140.         //            {
  5141.         //                com.Name = "20C";
  5142.         //            }
  5143.         //            else
  5144.         //            {
  5145.         //                com.Name = "CheckRelocatorPassword";
  5146.         //                com.parameters.Add(reader.ReadUInt16());
  5147.         //                com.parameters.Add(reader.ReadUInt16());
  5148.         //                com.parameters.Add(reader.ReadUInt16());
  5149.         //            }//True if inserted password is exact.
  5150.         //            break;
  5151.         //        //case 0x20D:
  5152.         //        //    com.Name = "20D";
  5153.         //        //    break;
  5154.         //        case 0x20E:
  5155.         //            com.Name = "CheckItemInterestingBag";
  5156.         //            com.parameters.Add(reader.ReadUInt16());
  5157.         //            com.parameters.Add(reader.ReadUInt16());
  5158.         //            break;
  5159.         //        case 0x20F:
  5160.         //            com.Name = "CompareInterestingItem";
  5161.         //            com.parameters.Add(reader.ReadUInt16());
  5162.         //            com.parameters.Add(reader.ReadUInt16());
  5163.         //            com.parameters.Add(reader.ReadUInt16());
  5164.         //            break;
  5165.         //        case 0x212:
  5166.         //            com.Name = "212";
  5167.         //            com.parameters.Add(reader.ReadUInt16());
  5168.         //            break;
  5169.         //        case 0x214:
  5170.         //            com.Name = "214";
  5171.         //            com.parameters.Add(reader.ReadUInt16()); // species
  5172.         //            com.parameters.Add(reader.ReadUInt16()); //0
  5173.         //            com.parameters.Add(reader.ReadUInt16()); //0
  5174.         //            com.parameters.Add(reader.ReadUInt16()); //0
  5175.         //            break;
  5176.         //        case 0x215:
  5177.         //            com.parameters.Add(reader.ReadUInt16());
  5178.         //            com.parameters.Add(reader.ReadUInt16());
  5179.         //            break;
  5180.         //        case 0x217:
  5181.         //            com.Name = "217";
  5182.         //            com.parameters.Add(reader.ReadUInt16());
  5183.         //            break;
  5184.         //        case 0x218:
  5185.         //            com.Name = "StoreGreeting";
  5186.         //            com.parameters.Add(reader.ReadUInt16());//val
  5187.         //            break;
  5188.         //        case 0x219:
  5189.         //            com.Name = "StoreThanks";
  5190.         //            com.parameters.Add(reader.ReadUInt16());//var
  5191.         //            break;
  5192.         //        //case 0x21A:
  5193.         //        //    com.Name = "21A";
  5194.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5195.         //        //    com.parameters.Add(reader.ReadUInt16());//val
  5196.         //        //    break;
  5197.         //        case 0x21C:
  5198.         //            com.Name = "21C";
  5199.         //            com.parameters.Add(reader.ReadUInt16());//var
  5200.         //            com.parameters.Add(reader.ReadUInt16());//val
  5201.         //            break;
  5202.         //        //case 0x21D:
  5203.         //        //    com.Name = "21D";
  5204.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5205.         //        //    break;
  5206.         //        case 0x21E:
  5207.         //            com.Name = "21E";
  5208.         //            com.parameters.Add(reader.ReadUInt16());
  5209.         //            break;
  5210.         //        case 0x21F:
  5211.         //            com.Name = "21F";
  5212.         //            break;
  5213.         //        case 0x220:
  5214.         //            com.Name = "CheckHavePokèmon";
  5215.         //            com.parameters.Add(reader.ReadUInt16());
  5216.         //            com.parameters.Add(reader.ReadUInt16());
  5217.         //            com.parameters.Add(reader.ReadUInt16());
  5218.         //            com.parameters.Add(reader.ReadUInt16());
  5219.         //            break;
  5220.         //        case 0x221:
  5221.         //            com.Name = "221";
  5222.         //            com.parameters.Add(reader.ReadUInt16());
  5223.         //            com.parameters.Add(reader.ReadUInt16());
  5224.         //            com.parameters.Add(reader.ReadUInt16());
  5225.         //            com.parameters.Add(reader.ReadUInt16());
  5226.         //            com.parameters.Add(reader.ReadUInt16());
  5227.         //            com.parameters.Add(reader.ReadUInt16());//var
  5228.         //            break;
  5229.         //        case 0x222:
  5230.         //            com.Name = "222";
  5231.         //            com.parameters.Add(reader.ReadUInt16());
  5232.         //            com.parameters.Add(reader.ReadUInt16());
  5233.         //            com.parameters.Add(reader.ReadUInt16());
  5234.         //            com.parameters.Add(reader.ReadUInt16());
  5235.         //            com.parameters.Add(reader.ReadUInt16());
  5236.         //            com.parameters.Add(reader.ReadUInt16());//var
  5237.         //            break;
  5238.         //        case 0x223:
  5239.         //            com.Name = "StoreHiddenPowerType";            // ex 382
  5240.         //            com.parameters.Add(reader.ReadUInt16()); //Storage for result (0-17 move type)
  5241.         //            com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  5242.         //            com.parameters.Add(reader.ReadUInt16());
  5243.         //            break;
  5244.         //        //case 0x224:
  5245.         //        //    com.Name = "224";
  5246.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5247.         //        //    com.parameters.Add(reader.ReadUInt16());//val
  5248.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5249.         //        //    break;
  5250.         //        case 0x225:
  5251.         //            com.Name = "225";
  5252.         //            com.parameters.Add(reader.ReadUInt16()); //Storage for result (0-17 move type)
  5253.         //            com.parameters.Add(reader.ReadUInt16()); //Party member to Store
  5254.         //            com.parameters.Add(reader.ReadUInt16());
  5255.         //            break;
  5256.         //        case 0x226:
  5257.         //            com.Name = "RotatingAnimation";
  5258.         //            com.parameters.Add(reader.ReadUInt16()); //OW Id
  5259.         //            break;
  5260.         //        case 0x227:
  5261.         //            com.Name = "ShowPokèmonPicture";
  5262.         //            com.parameters.Add(reader.ReadUInt16()); //Pokèmon Id
  5263.         //            com.parameters.Add(reader.ReadUInt16());
  5264.         //            break;
  5265.         //        case 0x228:
  5266.         //            com.Name = "228";
  5267.         //            com.parameters.Add(reader.ReadUInt16());
  5268.         //            com.parameters.Add(reader.ReadUInt16());
  5269.         //            break;
  5270.         //        case 0x229:
  5271.         //            com.Name = "229";
  5272.         //            com.parameters.Add(reader.ReadUInt16());
  5273.         //            com.parameters.Add(reader.ReadUInt16());
  5274.         //            break;
  5275.         //        case 0x22A:
  5276.         //            com.Name = "TeleportDreamForest";
  5277.         //            com.parameters.Add(reader.ReadUInt16());
  5278.         //            break;
  5279.         //        case 0x22B:
  5280.         //            com.Name = "CheckDreamFunction";
  5281.         //            com.parameters.Add(reader.ReadUInt16());
  5282.         //            com.parameters.Add(reader.ReadUInt16());
  5283.         //            break;
  5284.         //        case 0x22C:
  5285.         //            com.Name = "CheckSpacePokèmonDream";
  5286.         //            com.parameters.Add(reader.ReadUInt16());
  5287.         //            com.parameters.Add(reader.ReadUInt16());
  5288.         //            break;
  5289.         //        case 0x22D:
  5290.         //            com.Name = "SetVarPokèmonDream";
  5291.         //            com.parameters.Add(reader.ReadUInt16());
  5292.         //            com.parameters.Add(reader.ReadUInt16());
  5293.         //            break;
  5294.         //        case 0x22E:
  5295.         //            com.Name = "StartDreamIsle";
  5296.         //            break;
  5297.         //        case 0x22F:
  5298.         //            com.Name = "DreamBattle";
  5299.         //            com.parameters.Add(reader.ReadUInt16());
  5300.         //            com.parameters.Add(reader.ReadUInt16());
  5301.         //            break;
  5302.         //        case 0x230:
  5303.         //            com.Name = "GiveDreamPokèmon";
  5304.         //            com.parameters.Add(reader.ReadUInt16());
  5305.         //            break;
  5306.         //        //case 0x231:
  5307.         //        //    com.Name = "231";
  5308.         //        //    com.parameters.Add(reader.ReadUInt16()); // Var
  5309.         //        //    var next231 = reader.ReadUInt16();
  5310.         //        //    while (next231 >= 0x4000) { com.parameters.Add(next231); next231 = reader.ReadUInt16(); }
  5311.         //        //    reader.BaseStream.Position -= 2;
  5312.         //        //    break;
  5313.         //        case 0x232:
  5314.         //            com.Name = "232";
  5315.         //            com.parameters.Add(reader.ReadUInt16()); // Var
  5316.         //            com.parameters.Add(reader.ReadUInt16()); // Var
  5317.         //            break;
  5318.         //        case 0x233:
  5319.         //            if (scriptType == Constants.BWSCRIPT)
  5320.         //            {
  5321.         //                com.Name = "233";
  5322.         //                com.parameters.Add(reader.ReadUInt16()); // Var
  5323.         //                com.parameters.Add(reader.ReadUInt16()); // Var
  5324.         //            }
  5325.         //            else
  5326.         //            {
  5327.         //                com.Name = "233";
  5328.         //                com.parameters.Add(reader.ReadUInt16()); // Var
  5329.         //            }
  5330.         //            break;
  5331.         //        case 0x234:
  5332.         //            com.Name = "233";
  5333.         //            com.parameters.Add(reader.ReadUInt16());
  5334.         //            com.parameters.Add(reader.ReadUInt16());
  5335.         //            break;
  5336.         //        case 0x236:
  5337.         //            com.Name = "236";
  5338.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5339.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5340.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5341.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5342.         //            break;
  5343.         //        case 0x237:
  5344.         //            com.Name = "237";
  5345.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5346.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5347.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5348.         //            break;
  5349.         //        //case 0x239:
  5350.         //        //    com.parameters.Add(reader.ReadUInt16());
  5351.         //        //    break;
  5352.         //        case 0x23A:
  5353.         //            com.Name = "23A";
  5354.         //            com.parameters.Add(reader.ReadUInt16());
  5355.         //            com.parameters.Add(reader.ReadUInt16());
  5356.         //            break;
  5357.         //        case 0x23B:
  5358.         //            com.Name = "CheckSendSaveCG";
  5359.         //            com.parameters.Add(reader.ReadUInt16());
  5360.         //            com.parameters.Add(reader.ReadUInt16()); //RV = Message Id
  5361.         //            break;
  5362.         //        case 0x23D:
  5363.         //            com.Name = "23D";
  5364.         //            com.parameters.Add(reader.ReadUInt16());
  5365.         //            com.parameters.Add(reader.ReadUInt16()); //RV = Message Id
  5366.         //            break;
  5367.         //        case 0x23E:
  5368.         //            com.Name = "23E";
  5369.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5370.         //            com.parameters.Add(reader.ReadUInt16());
  5371.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5372.         //            break;
  5373.         //        //case 0x23F:
  5374.         //        //    com.Name = "Close23F";
  5375.         //        //    break;
  5376.         //        case 0x240:
  5377.         //            com.Name = "240";
  5378.         //            com.parameters.Add(reader.ReadUInt16());
  5379.         //            break;
  5380.         //        case 0x242:
  5381.         //            com.Name = "242";
  5382.         //            com.parameters.Add(reader.ReadUInt16());
  5383.         //            com.parameters.Add(reader.ReadUInt16());
  5384.         //            break;
  5385.         //        case 0x243:
  5386.         //            com.Name = "BorderedMessage2";
  5387.         //            com.parameters.Add(reader.ReadUInt16());
  5388.         //            com.parameters.Add(reader.ReadUInt16());
  5389.         //            break;
  5390.         //        case 0x244:
  5391.         //            com.Name = "OpenHelpSystem";
  5392.         //            com.parameters.Add(reader.ReadUInt16());
  5393.         //            break;
  5394.         //        //case 0x245:
  5395.         //        //    com.Name = "245";
  5396.         //        //    com.parameters.Add(reader.ReadUInt16());
  5397.         //        //    break;
  5398.         //        case 0x246:
  5399.         //            com.Name = "246";
  5400.         //            com.parameters.Add(reader.ReadUInt16());
  5401.         //            break;
  5402.         //        case 0x247:
  5403.         //            com.parameters.Add(reader.ReadUInt16());
  5404.         //            com.parameters.Add(reader.ReadUInt16());
  5405.         //            com.parameters.Add(reader.ReadUInt16());
  5406.         //            com.parameters.Add(reader.ReadUInt16());
  5407.         //            com.parameters.Add(reader.ReadUInt16());
  5408.         //            break;
  5409.         //        case 0x248:
  5410.         //            com.Name = "248";
  5411.         //            com.parameters.Add(reader.ReadUInt16());
  5412.         //            com.parameters.Add(reader.ReadUInt16());
  5413.         //            break;
  5414.         //        case 0x249:
  5415.         //            com.Name = "StoreInterestingItemData";
  5416.         //            com.parameters.Add(reader.ReadUInt16());
  5417.         //            com.parameters.Add(reader.ReadUInt16());
  5418.         //            com.parameters.Add(reader.ReadUInt16());
  5419.         //            com.parameters.Add(reader.ReadUInt16());
  5420.         //            var next249 = reader.ReadUInt16();
  5421.         //            while (next249 >= 0x4000) { com.parameters.Add(next249); next249 = reader.ReadUInt16(); }
  5422.         //            reader.BaseStream.Position -= 2;
  5423.         //            break;
  5424.         //        case 0x24A:
  5425.         //            if (scriptType == Constants.BWSCRIPT)
  5426.         //            {
  5427.         //                com.Name = "TakeInterestingItem";
  5428.         //                com.parameters.Add(reader.ReadUInt16());
  5429.         //                com.parameters.Add(reader.ReadUInt16());
  5430.         //                break;
  5431.         //            }
  5432.         //            else
  5433.         //            {
  5434.         //                com.Name = "CheckCGearActive";
  5435.         //                com.parameters.Add(reader.ReadUInt16());
  5436.         //                break;
  5437.         //            }
  5438.         //        case 0x24B:
  5439.         //            com.Name = "24B";
  5440.         //            com.parameters.Add(reader.ReadUInt16());
  5441.         //            //com.parameters.Add(reader.ReadUInt16());
  5442.         //            break;
  5443.         //        case 0x24C:
  5444.         //            com.parameters.Add(reader.ReadUInt16());
  5445.         //            break;
  5446.         //        case 0x24D:
  5447.         //            com.Name = "24D";
  5448.         //            com.parameters.Add(reader.ReadUInt16());
  5449.         //            com.parameters.Add(reader.ReadUInt16());
  5450.         //            break;
  5451.         //        case 0x24E:
  5452.         //            com.Name = "24E";
  5453.         //            com.parameters.Add(reader.ReadUInt16());
  5454.         //            com.parameters.Add(reader.ReadUInt16());
  5455.         //            break;
  5456.         //        case 0x24F:
  5457.         //            com.Name = "24F";
  5458.         //            com.parameters.Add(reader.ReadUInt16());
  5459.         //            com.parameters.Add(reader.ReadUInt16());
  5460.         //            com.parameters.Add(reader.ReadUInt16());
  5461.         //            com.parameters.Add(reader.ReadUInt16());
  5462.         //            com.parameters.Add(reader.ReadUInt16());
  5463.         //            com.parameters.Add(reader.ReadUInt16());
  5464.         //            break;
  5465.         //        case 0x251:
  5466.         //            com.Name = "251";
  5467.         //            com.parameters.Add(reader.ReadUInt16());
  5468.         //            com.parameters.Add(reader.ReadUInt16());
  5469.         //            com.parameters.Add(reader.ReadUInt16());
  5470.         //            break;
  5471.         //        //case 0x252:
  5472.         //        //    com.Name = "252";
  5473.         //        //    com.parameters.Add(reader.ReadUInt16());
  5474.         //        //    var next252 = reader.ReadUInt16();
  5475.         //        //    while (next252 >= 0x4000) { com.parameters.Add(next252); next252 = reader.ReadUInt16(); }
  5476.         //        //    reader.BaseStream.Position -= 2;
  5477.         //        //    break;
  5478.         //        case 0x253:
  5479.         //            com.Name = "253";
  5480.         //            com.parameters.Add(reader.ReadUInt16());
  5481.         //            com.parameters.Add(reader.ReadUInt16());
  5482.         //            break;
  5483.         //        case 0x254:
  5484.         //            com.parameters.Add(reader.ReadUInt16());
  5485.         //            break;
  5486.         //        case 0x25A:
  5487.         //            com.Name = "25A";
  5488.         //            com.parameters.Add(reader.ReadUInt16());
  5489.         //            com.parameters.Add(reader.ReadUInt16());
  5490.         //            com.parameters.Add(reader.ReadUInt16());
  5491.         //            com.parameters.Add(reader.ReadUInt16());
  5492.         //            com.parameters.Add(reader.ReadUInt16());
  5493.         //            break;
  5494.         //        case 0x25C:
  5495.         //            com.Name = "25C";
  5496.         //            com.parameters.Add(reader.ReadUInt16());
  5497.         //            com.parameters.Add(reader.ReadUInt16());
  5498.         //            com.parameters.Add(reader.ReadUInt16());
  5499.         //            com.parameters.Add(reader.ReadUInt16());
  5500.         //            com.parameters.Add(reader.ReadUInt16());
  5501.         //            com.parameters.Add(reader.ReadUInt16());
  5502.         //            break;
  5503.         //        case 0x25D:
  5504.         //            com.Name = "CheckCGearActive";
  5505.         //            com.parameters.Add(reader.ReadUInt16());
  5506.         //            break;
  5507.         //        //case 0x25F:
  5508.         //        //    com.Name = "25F";
  5509.         //        //    com.parameters.Add(reader.ReadUInt16());
  5510.         //        //    break;
  5511.         //        case 0x262:
  5512.         //            com.Name = "262(BW2)";
  5513.         //            com.parameters.Add(reader.ReadUInt16());
  5514.         //            com.parameters.Add(reader.ReadUInt16());
  5515.         //            break;
  5516.         //        case 0x263:
  5517.         //            com.Name = "263(BW2)";
  5518.         //            com.parameters.Add(reader.ReadUInt16());
  5519.         //            break;
  5520.         //        //case 0x266:
  5521.         //        //    com.Name = "266";
  5522.         //        //    com.parameters.Add(reader.ReadUInt16()); // var
  5523.         //        //    break;
  5524.         //        //case 0x26C:
  5525.         //        //    com.Name = "StoreMedals26C";
  5526.         //        //    com.parameters.Add(reader.ReadByte());
  5527.         //        //    com.parameters.Add(reader.ReadUInt16());
  5528.         //        //    break;
  5529.         //        //case 0x26D:
  5530.         //        //    com.Name = "StoreMedals26D";
  5531.         //        //    com.parameters.Add(reader.ReadByte());
  5532.         //        //    com.parameters.Add(reader.ReadUInt16());
  5533.         //        //    break;
  5534.         //        case 0x26E:
  5535.         //            com.Name = "StoreMedalsNumber";
  5536.         //            com.parameters.Add(reader.ReadByte()); // 3 For medals, command type?
  5537.         //            com.parameters.Add(reader.ReadUInt16()); // Variable to Store To
  5538.         //            break;
  5539.         //        //case 0x271:
  5540.         //        //    com.Name = "271";
  5541.         //        //    com.parameters.Add(reader.ReadUInt16());
  5542.         //        //    com.parameters.Add(reader.ReadUInt16());
  5543.         //        //    break;
  5544.         //        //case 0x272:
  5545.         //        //    com.Name = "272";
  5546.         //        //    com.parameters.Add(reader.ReadUInt16());
  5547.         //        //    com.parameters.Add(reader.ReadUInt16());
  5548.         //        //    break;
  5549.         //        case 0x273:
  5550.         //            com.Name = "ActHome(BW2)";
  5551.         //            com.parameters.Add(reader.ReadUInt16());
  5552.         //            break;
  5553.         //        case 0x275:
  5554.         //            com.Name = "SetVarMission(BW2)";
  5555.         //            com.parameters.Add(reader.ReadByte());
  5556.         //            com.parameters.Add(reader.ReadUInt16());
  5557.         //            com.parameters.Add(reader.ReadUInt16());
  5558.         //            break;
  5559.         //        case 0x276:
  5560.         //            com.Name = "276(BW2)";
  5561.         //            com.parameters.Add(reader.ReadUInt16());
  5562.         //            com.parameters.Add(reader.ReadUInt16());
  5563.         //            break;
  5564.         //        //case 0x279:
  5565.         //        //    com.Name = "279";
  5566.         //        //    break;
  5567.         //        //case 0x283:
  5568.         //        //    com.Name = "283";
  5569.         //        //    com.parameters.Add(reader.ReadByte());
  5570.         //        //    com.parameters.Add(reader.ReadByte());
  5571.         //        //    break;
  5572.         //        //case 0x284:
  5573.         //        //    com.Name = "284";
  5574.         //        //    com.parameters.Add(reader.ReadByte());
  5575.         //        //    com.parameters.Add(reader.ReadByte());
  5576.         //        //    break;
  5577.  
  5578.         //        //case 0x285:
  5579.         //        //    com.Name = "285";
  5580.         //        //    com.parameters.Add(reader.ReadUInt16());
  5581.         //        //    com.parameters.Add(reader.ReadUInt16());
  5582.         //        //    com.parameters.Add(reader.ReadUInt16());
  5583.         //        //    break;
  5584.         //        //case 0x287:
  5585.         //        //    com.Name = "287";
  5586.         //        //    com.parameters.Add(reader.ReadUInt16());
  5587.         //        //    com.parameters.Add(reader.ReadUInt16());
  5588.         //        //    com.parameters.Add(reader.ReadUInt16());
  5589.         //        //    break;
  5590.         //        //case 0x288:
  5591.         //        //    com.Name = "288";
  5592.         //        //    com.parameters.Add(reader.ReadUInt16()); // value
  5593.         //        //    com.parameters.Add(reader.ReadUInt16()); // Variable
  5594.         //        //    com.parameters.Add(reader.ReadUInt16()); // Variable
  5595.         //        //    break;
  5596.         //        //case 0x289:
  5597.         //        //    com.Name = "289";
  5598.         //        //    com.parameters.Add(reader.ReadUInt16());    //might just be 3 tot
  5599.         //        //    var next289 = reader.ReadUInt16();
  5600.         //        //    while (next289 >= 0x4000) { com.parameters.Add(next289); next289 = reader.ReadUInt16(); }
  5601.         //        //    reader.BaseStream.Position -= 2;
  5602.         //        //    break;
  5603.         //        //case 0x28B:
  5604.         //        //    com.Name = "28B";
  5605.         //        //    break;
  5606.         //        case 0x290:
  5607.         //            com.Name = "290(BW2)";
  5608.         //            com.parameters.Add(reader.ReadByte());
  5609.         //            break;
  5610.         //        //case 0x292:
  5611.         //        //    com.Name = "292";
  5612.         //        //    com.parameters.Add(reader.ReadByte());
  5613.         //        //    break;
  5614.         //        //case 0x293:
  5615.         //        //    com.Name = "293";
  5616.         //        //    com.parameters.Add(reader.ReadByte());
  5617.         //        //    break;
  5618.         //        //case 0x294:
  5619.         //        //    com.Name = "294";
  5620.         //        //    com.parameters.Add(reader.ReadByte());
  5621.         //        //    com.parameters.Add(reader.ReadByte());
  5622.         //        //    break;
  5623.         //        //case 0x295:
  5624.         //        //    com.Name = "290";
  5625.         //        //    break;
  5626.         //        //case 0x297:
  5627.         //        //    com.Name = "297";
  5628.         //        //    com.parameters.Add(reader.ReadUInt16());
  5629.         //        //    var next297 = reader.ReadUInt16();
  5630.         //        //    while (next297 >= 0x4000) { com.parameters.Add(next297); next297 = reader.ReadUInt16(); }
  5631.         //        //    reader.BaseStream.Position -= 2;
  5632.         //        //    break;
  5633.         //        //case 0x29A:
  5634.         //        //    com.Name = "29A";
  5635.         //        //    com.parameters.Add(reader.ReadByte()); // opt
  5636.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  5637.         //        //    break;
  5638.         //        //case 0x29B:
  5639.         //        //    com.Name = "29B";
  5640.         //        //    com.parameters.Add(reader.ReadByte());
  5641.         //        //    break;
  5642.         //        //case 0x29D:
  5643.         //        //    com.Name = "29D";
  5644.         //        //    break;
  5645.         //        //case 0x29E:
  5646.         //        //    com.Name = "29E";
  5647.         //        //    com.parameters.Add(reader.ReadUInt16());
  5648.         //        //    com.parameters.Add(reader.ReadUInt16());
  5649.         //        //    break;
  5650.         //        //case 0x29F:
  5651.         //        //    com.Name = "29F";
  5652.         //        //    com.parameters.Add(reader.ReadUInt16());
  5653.         //        //    break;
  5654.         //        //case 0x2A0:
  5655.         //        //    com.Name = "StoreHasMedal";
  5656.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5657.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5658.         //        //    break;
  5659.         //        case 0x2A1:
  5660.         //            com.Name = "StoreMedalsType(BW2)";
  5661.         //            com.parameters.Add(reader.ReadUInt16());
  5662.         //            break;
  5663.         //        //case 0x2A5:
  5664.         //        //    com.Name = "2A5";
  5665.         //        //    com.parameters.Add(reader.ReadUInt16());
  5666.         //        //    break;
  5667.         //        //case 0x2A6:
  5668.         //        //    com.Name = "2A6";
  5669.         //        //    break;
  5670.         //        //case 0x2A7:
  5671.         //        //    com.Name = "2A7";
  5672.         //        //    com.parameters.Add(reader.ReadUInt16());
  5673.         //        //    break;
  5674.         //        //case 0x2A8:
  5675.         //        //    com.Name = "2A8";
  5676.         //        //    break;
  5677.         //        //case 0x2A9:
  5678.         //        //    com.Name = "2A9";
  5679.         //        //    break;
  5680.         //        //case 0x2AF:
  5681.         //        //    com.Name = "StoreDifficulty";
  5682.         //        //    com.parameters.Add(reader.ReadUInt16()); // Store result to var/cont of Easy 0 | Normal 1 | Hard 2
  5683.         //        //    break;
  5684.         //        //case 0x2B1:
  5685.         //        //    com.Name = "2B1";
  5686.         //        //    com.parameters.Add(reader.ReadUInt16());
  5687.         //        //    break;
  5688.         //        case 0x2B2:
  5689.         //            com.Name = "2B2(BW2)";
  5690.         //            com.parameters.Add(reader.ReadUInt16());
  5691.         //            com.parameters.Add(reader.ReadUInt16());
  5692.         //            break;
  5693.         //        //case 0x2B3:
  5694.         //        //    com.parameters.Add(reader.ReadUInt16());
  5695.         //        //    com.parameters.Add(reader.ReadUInt16()); // var
  5696.         //        //    break;
  5697.         //        //case 0x2B4:
  5698.         //        //    com.parameters.Add(reader.ReadUInt16());
  5699.         //        //    com.parameters.Add(reader.ReadUInt16()); // var
  5700.         //        //    break;
  5701.         //        //case 0x2B5:
  5702.         //        //    com.Name = "2B5";
  5703.         //        //    com.parameters.Add(reader.ReadUInt16());
  5704.         //        //    com.parameters.Add(reader.ReadUInt16());
  5705.         //        //    break;
  5706.         //        //case 0x2B6:
  5707.         //        //    com.Name = "2B6";
  5708.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5709.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  5710.         //        //    break;
  5711.         //        //case 0x2B7:
  5712.         //        //    com.Name = "2B7";
  5713.         //        //    com.parameters.Add(reader.ReadUInt16());
  5714.         //        //    break;
  5715.         //        //case 0x2B8:
  5716.         //        //    com.Name = "FollowMeStart (0x2B8)"; // seen at the start of a follow me, maybe tracksteps
  5717.         //        //    break;
  5718.         //        //case 0x2B9:
  5719.         //        //    com.Name = "FollowMeEnd (0x2B9)"; // maybe endtracksteps
  5720.         //        //    break;
  5721.         //        //case 0x2BA:
  5722.         //        //    com.Name = "FollowMeCopyStepsTo (0x2BA)"; // copy steps taken with follow me to CONT
  5723.         //        //    com.parameters.Add(reader.ReadUInt16());
  5724.         //        //    break;
  5725.         //        //case 0x2BC:
  5726.         //        //    com.Name = "2BC";
  5727.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5728.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5729.         //        //    break;
  5730.         //        //case 0x2BD:
  5731.         //        //    com.Name = "2BD";
  5732.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5733.         //        //    break;
  5734.         //        case 0x2BE:
  5735.         //            com.Name = "2BE(BW2)";
  5736.         //            com.parameters.Add(reader.ReadUInt16()); //val
  5737.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5738.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5739.         //            com.parameters.Add(reader.ReadUInt16()); //var
  5740.         //            break;
  5741.         //        //case 0x2C0:
  5742.         //        //    com.Name = "2C0";
  5743.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5744.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5745.         //        //    break;
  5746.         //        //case 0x2C3:
  5747.         //        //    com.Name = "2C3";
  5748.         //        //    com.parameters.Add(reader.ReadUInt16());//var
  5749.         //        //    com.parameters.Add(reader.ReadUInt16());
  5750.         //        //    break;
  5751.         //        //case 0x2C4:
  5752.         //        //    com.Name = "2C4";
  5753.         //        //    break;
  5754.         //        //case 0x2C5:
  5755.         //        //    com.Name = "2C5";
  5756.         //        //    com.parameters.Add(reader.ReadUInt16());
  5757.         //        //    break;
  5758.         //        //case 0x2CB:
  5759.         //        //    com.Name = "2CB";
  5760.         //        //    com.parameters.Add(reader.ReadUInt16());
  5761.         //        //    break;
  5762.         //        //case 0x2CD:
  5763.         //        //    com.Name = "2CD";
  5764.         //        //    com.parameters.Add(reader.ReadUInt16());
  5765.         //        //    break;
  5766.         //        //case 0x2CF:
  5767.         //        //    com.Name = "2CF";
  5768.         //        //    com.parameters.Add(reader.ReadUInt16()); //val
  5769.         //        //    com.parameters.Add(reader.ReadUInt16()); //val
  5770.         //        //    com.parameters.Add(reader.ReadUInt16()); //val
  5771.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  5772.         //        //    break;
  5773.         //        //case 0x2D0:
  5774.         //        //    com.Name = "***HABITATLISTENABLE***";
  5775.         //        //    break;
  5776.         //        case 0x2D1:
  5777.         //            com.Name = "StoreBCSkyscraperTrainerNumber(BW2)";
  5778.         //            com.parameters.Add(reader.ReadUInt16());
  5779.         //            break;
  5780.         //        case 0x2D3:
  5781.         //            com.Name = "2D3(BW2)";
  5782.         //            com.parameters.Add(reader.ReadUInt16());
  5783.         //            com.parameters.Add(reader.ReadUInt16());
  5784.         //            break;
  5785.         //        //case 0x2D4:
  5786.         //        //    com.Name = "2D4";
  5787.         //        //    com.parameters.Add(reader.ReadUInt16());
  5788.         //        //    break;
  5789.         //        //case 0x2D5:
  5790.         //        //    com.Name = "2D5";
  5791.         //        //    com.parameters.Add(reader.ReadUInt16()); // value
  5792.         //        //    com.parameters.Add(reader.ReadUInt16()); // variable
  5793.         //        //    break;
  5794.         //        case 0x2D7:
  5795.         //            com.Name = "2D7(BW2)";
  5796.         //            com.parameters.Add(reader.ReadUInt16()); // value
  5797.         //            com.parameters.Add(reader.ReadUInt16()); // variable
  5798.         //            break;
  5799.         //        //case 0x2D9:
  5800.         //        //    com.Name = "2D9";
  5801.         //        //    com.parameters.Add(reader.ReadUInt16());
  5802.         //        //    com.parameters.Add(reader.ReadUInt16());
  5803.         //        //    break;
  5804.         //        //case 0x2DA:
  5805.         //        //    com.Name = "2DA";
  5806.         //        //    com.parameters.Add(reader.ReadUInt16()); // low value
  5807.         //        //    break;
  5808.         //        //case 0x2DB:
  5809.         //        //    com.Name = "2DB";
  5810.         //        //    com.parameters.Add(reader.ReadUInt16());
  5811.         //        //    com.parameters.Add(reader.ReadUInt16());
  5812.         //        //    break;
  5813.         //        //case 0x2DC:
  5814.         //        //    com.Name = "2DC";
  5815.         //        //    com.parameters.Add(reader.ReadUInt16());
  5816.         //        //    com.parameters.Add(reader.ReadUInt16());
  5817.         //        //    com.parameters.Add(reader.ReadUInt16());
  5818.         //        //    break;
  5819.         //        //case 0x2DD:
  5820.         //        //    com.Name = "StoreUnityVisitors";
  5821.         //        //    com.parameters.Add(reader.ReadUInt16()); // Variable to return to?
  5822.         //        //    break;
  5823.         //        //case 0x2DF:
  5824.         //        //    com.Name = "StoreMyActivities"; // activity
  5825.         //        //    com.parameters.Add(reader.ReadUInt16()); // Variable to return to?
  5826.         //        //    break;
  5827.         //        //case 0x2E1:
  5828.         //        //    com.Name = "2E1";
  5829.         //        //    break;
  5830.         //        //case 0x2E8:
  5831.         //        //    com.Name = "2E8";
  5832.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5833.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5834.         //        //    break;
  5835.         //        //case 0x2ED:
  5836.         //        //    com.Name = "2ED";
  5837.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5838.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5839.         //        //    break;
  5840.         //        //case 0x2EE:
  5841.         //        //    com.Name = "Prop2EE";
  5842.         //        //    com.parameters.Add(reader.ReadUInt16()); // value ~ prop# to give?
  5843.         //        //    com.parameters.Add(reader.ReadUInt16()); // variable/container
  5844.         //        //    break;
  5845.         //        //case 0x2EF:
  5846.         //        //    com.Name = "2EF";
  5847.         //        //    com.parameters.Add(reader.ReadUInt16());
  5848.         //        //    break;
  5849.         //        //case 0x2F1:
  5850.         //        //    com.Name = "2F1";
  5851.         //        //    com.parameters.Add(reader.ReadUInt16()); //
  5852.         //        //    break;
  5853.         //        //case 0x2F2:
  5854.         //        //    com.Name = "2F2";
  5855.         //        //    break;
  5856.  
  5857.         //        ////commands set 2 (1000)
  5858.  
  5859.         //        case 0x3E8:
  5860.         //            com.Name = "3E8(BW2)";
  5861.         //            var next3E9 = reader.ReadUInt16();
  5862.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  5863.         //            {
  5864.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  5865.         //                {
  5866.         //                    reader.BaseStream.Position -= 2;
  5867.         //                    goto End;
  5868.         //                }
  5869.         //                com.parameters.Add(next3E9);
  5870.         //                next3E9 = reader.ReadUInt16();
  5871.  
  5872.         //            }
  5873.         //        End: reader.BaseStream.Position -= 2;
  5874.         //            break;
  5875.         //        case 0x3E9:
  5876.         //            com.Name = "3E9(BW2)";
  5877.         //            next3E9 = reader.ReadUInt16();
  5878.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  5879.         //            {
  5880.         //                if ((next3E9 == 0x9 && reader.ReadUInt16() > 0x400) || next3E9 == 3)
  5881.         //                {
  5882.         //                    reader.BaseStream.Position -= 2;
  5883.         //                    goto End;
  5884.         //                }
  5885.         //                com.parameters.Add(next3E9);
  5886.         //                next3E9 = reader.ReadUInt16();
  5887.  
  5888.         //            }
  5889.         //            reader.BaseStream.Position -= 2;
  5890.         //            break;
  5891.         //        case 0x3EA:
  5892.         //            com.Name = "3EA(BW2)";
  5893.         //            next3E9 = reader.ReadUInt16();
  5894.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  5895.         //            {
  5896.         //                if ((next3E9 == 0x9 && reader.ReadUInt16() > 0x400) || next3E9 == 3)
  5897.         //                {
  5898.         //                    reader.BaseStream.Position -= 2;
  5899.         //                    goto End;
  5900.         //                }
  5901.         //                com.parameters.Add(next3E9);
  5902.         //                next3E9 = reader.ReadUInt16();
  5903.  
  5904.         //            }
  5905.         //            reader.BaseStream.Position -= 2;
  5906.         //            break;
  5907.         //        case 0x3EB:
  5908.         //            com.Name = "3EB(BW2)";
  5909.         //            next3E9 = reader.ReadUInt16();
  5910.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  5911.         //            {
  5912.         //                if ((next3E9 == 0x9 && reader.ReadUInt16() > 0x400) || next3E9 == 3)
  5913.         //                {
  5914.         //                    reader.BaseStream.Position -= 2;
  5915.         //                    goto End;
  5916.         //                }
  5917.         //                com.parameters.Add(next3E9);
  5918.         //                next3E9 = reader.ReadUInt16();
  5919.  
  5920.         //            }
  5921.         //            reader.BaseStream.Position -= 2;
  5922.         //            break;
  5923.         //        case 0x3EC:
  5924.         //            com.Name = "3EC(BW2)";
  5925.         //            next3E9 = reader.ReadUInt16();
  5926.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  5927.         //            {
  5928.         //                if ((next3E9 == 0x9 && reader.ReadUInt16() > 0x400) || next3E9 == 3)
  5929.         //                {
  5930.         //                    reader.BaseStream.Position -= 2;
  5931.         //                    goto End;
  5932.         //                }
  5933.         //                com.parameters.Add(next3E9);
  5934.         //                next3E9 = reader.ReadUInt16();
  5935.  
  5936.         //            }
  5937.         //            reader.BaseStream.Position -= 2;
  5938.         //            break;
  5939.         //        case 0x3ED:
  5940.         //            com.Name = "3ED(BW2)";
  5941.         //            next3E9 = reader.ReadUInt16();
  5942.         //            com.parameters.Add(next3E9);
  5943.         //            //while (next3E9 < 0xA || next3E9 > 0x400)
  5944.         //            //{
  5945.         //            //    if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  5946.         //            //    {
  5947.         //            //        reader.BaseStream.Position -= 2;
  5948.         //            //        goto End;
  5949.         //            //    }
  5950.         //            //    com.parameters.Add(next3E9);
  5951.         //            //    next3E9 = reader.ReadUInt16();
  5952.  
  5953.         //            //}
  5954.         //            //reader.BaseStream.Position -= 2;
  5955.         //            break;
  5956.         //        case 0x3EE:
  5957.         //            com.Name = "3EE(BW2)";
  5958.         //            var next3EE = reader.ReadUInt16();
  5959.         //            while (next3EE <= 40) { com.parameters.Add(next3EE); next3EE = reader.ReadUInt16(); }
  5960.         //            while (next3EE >= 0x4000) { com.parameters.Add(next3EE); next3EE = reader.ReadUInt16(); }
  5961.         //            reader.BaseStream.Position -= 2;
  5962.         //            break;
  5963.         //        case 0x3EF:
  5964.         //            com.Name = "3EF(BW2)";
  5965.         //            next3E9 = reader.ReadUInt16();
  5966.         //            while (next3E9 < 0x40 || next3E9 > 0x400)
  5967.         //            {
  5968.         //                if ((next3E9 == 0x9 && reader.ReadUInt16() > 0x400) || next3E9 == 3)
  5969.         //                {
  5970.         //                    reader.BaseStream.Position -= 2;
  5971.         //                    goto End;
  5972.         //                }
  5973.         //                com.parameters.Add(next3E9);
  5974.         //                next3E9 = reader.ReadUInt16();
  5975.  
  5976.         //            }
  5977.         //            reader.BaseStream.Position -= 2;
  5978.         //            break;
  5979.         //        case 0x3F0:
  5980.         //            com.Name = "3F0";
  5981.         //            next3E9 = reader.ReadUInt16();
  5982.         //            while (next3E9 < 0x40 || next3E9 > 0x400)
  5983.         //            {
  5984.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  5985.         //                {
  5986.         //                    reader.BaseStream.Position -= 2;
  5987.         //                    goto End;
  5988.         //                }
  5989.         //                com.parameters.Add(next3E9);
  5990.         //                next3E9 = reader.ReadUInt16();
  5991.  
  5992.         //            }
  5993.         //            reader.BaseStream.Position -= 2;
  5994.         //            break;
  5995.         //        case 0x3F1:
  5996.         //            com.Name = "3F1";
  5997.         //            next3E9 = reader.ReadUInt16();
  5998.         //            while (next3E9 < 0x40 || next3E9 > 0x400)
  5999.         //            {
  6000.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6001.         //                {
  6002.         //                    reader.BaseStream.Position -= 2;
  6003.         //                    goto End;
  6004.         //                }
  6005.         //                com.parameters.Add(next3E9);
  6006.         //                next3E9 = reader.ReadUInt16();
  6007.  
  6008.         //            }
  6009.         //            reader.BaseStream.Position -= 2;
  6010.         //            break;
  6011.         //        case 0x3F2:
  6012.         //            com.Name = "3F2";
  6013.         //            next3E9 = reader.ReadUInt16();
  6014.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6015.         //            {
  6016.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6017.         //                {
  6018.         //                    reader.BaseStream.Position -= 2;
  6019.         //                    goto End;
  6020.         //                }
  6021.         //                com.parameters.Add(next3E9);
  6022.         //                next3E9 = reader.ReadUInt16();
  6023.  
  6024.         //            }
  6025.         //            reader.BaseStream.Position -= 2;
  6026.         //            break;
  6027.         //        case 0x3F3:
  6028.         //            com.Name = "3F3";
  6029.         //            next3E9 = reader.ReadUInt16();
  6030.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6031.         //            {
  6032.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6033.         //                {
  6034.         //                    reader.BaseStream.Position -= 2;
  6035.         //                    goto End;
  6036.         //                }
  6037.         //                com.parameters.Add(next3E9);
  6038.         //                next3E9 = reader.ReadUInt16();
  6039.  
  6040.         //            }
  6041.         //            reader.BaseStream.Position -= 2;
  6042.         //            break;
  6043.         //        case 0x3F4:
  6044.         //            com.Name = "3F4";
  6045.         //            next3E9 = reader.ReadUInt16();
  6046.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6047.         //            {
  6048.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6049.         //                {
  6050.         //                    reader.BaseStream.Position -= 2;
  6051.         //                    goto End;
  6052.         //                }
  6053.         //                com.parameters.Add(next3E9);
  6054.         //                next3E9 = reader.ReadUInt16();
  6055.  
  6056.         //            }
  6057.         //            reader.BaseStream.Position -= 2;
  6058.         //            break;
  6059.         //        case 0x3F5:
  6060.         //            com.Name = "3F5";
  6061.         //            next3E9 = reader.ReadUInt16();
  6062.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6063.         //            {
  6064.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6065.         //                {
  6066.         //                    reader.BaseStream.Position -= 2;
  6067.         //                    goto End;
  6068.         //                }
  6069.         //                com.parameters.Add(next3E9);
  6070.         //                next3E9 = reader.ReadUInt16();
  6071.  
  6072.         //            }
  6073.         //            reader.BaseStream.Position -= 2;
  6074.         //            break;
  6075.         //        case 0x3F6:
  6076.         //            com.Name = "3F6";
  6077.         //            com.parameters.Add(reader.ReadUInt16());
  6078.         //            break;
  6079.         //        case 0x3F8:
  6080.         //            com.Name = "3F8";
  6081.         //            next3E9 = reader.ReadUInt16();
  6082.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6083.         //            {
  6084.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6085.         //                {
  6086.         //                    reader.BaseStream.Position -= 2;
  6087.         //                    goto End;
  6088.         //                }
  6089.         //                com.parameters.Add(next3E9);
  6090.         //                next3E9 = reader.ReadUInt16();
  6091.         //            }
  6092.         //            reader.BaseStream.Position -= 2;
  6093.         //            break;
  6094.         //        case 0x3F9:
  6095.         //            com.Name = "3F9";
  6096.         //            com.parameters.Add(reader.ReadUInt16());
  6097.         //            com.parameters.Add(reader.ReadUInt16());
  6098.  
  6099.         //            break;
  6100.         //        case 0x3FA:
  6101.         //            com.Name = "3FA";
  6102.         //            next3E9 = reader.ReadUInt16();
  6103.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6104.         //            {
  6105.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6106.         //                {
  6107.         //                    reader.BaseStream.Position -= 2;
  6108.         //                    goto End;
  6109.         //                }
  6110.         //                com.parameters.Add(next3E9);
  6111.         //                next3E9 = reader.ReadUInt16();
  6112.  
  6113.         //            }
  6114.         //            reader.BaseStream.Position -= 2;
  6115.         //            break;
  6116.         //        case 0x3FB:         //iris?
  6117.         //            com.parameters.Add(reader.ReadUInt16()); //not sure if below is needed
  6118.         //            next3E9 = reader.ReadUInt16();
  6119.         //            while (next3E9 < 0xA || next3E9 > 0x400)
  6120.         //            {
  6121.         //                if (next3E9 == 0x9 && reader.ReadUInt16() > 0x400)
  6122.         //                {
  6123.         //                    reader.BaseStream.Position -= 2;
  6124.         //                    goto End;
  6125.         //                }
  6126.         //                com.parameters.Add(next3E9);
  6127.         //                next3E9 = reader.ReadUInt16();
  6128.         //            }
  6129.         //            reader.BaseStream.Position -= 2;
  6130.         //            break;
  6131.         //        case 0x3FC:
  6132.         //            com.Name = "3FC";
  6133.         //            com.parameters.Add(reader.ReadUInt16());
  6134.         //            break;
  6135.         //        case 0x3FD:
  6136.         //            com.Name = "3FD";
  6137.         //            com.parameters.Add(reader.ReadUInt16());
  6138.         //            break;
  6139.         //        case 0x3FE:
  6140.         //            com.Name = "3FE";
  6141.         //            com.parameters.Add(reader.ReadUInt16());
  6142.         //            break;
  6143.         //        case 0x3FF:
  6144.         //            com.Name = "3FF";
  6145.         //            com.parameters.Add(reader.ReadUInt16());
  6146.         //            var next3FF = reader.ReadUInt16();
  6147.         //            while (next3FF >= 0x4000) { com.parameters.Add(next3FF); next3FF = reader.ReadUInt16(); }
  6148.         //            reader.BaseStream.Position -= 2;
  6149.         //            break;
  6150.         //        case 0x401:
  6151.         //            com.Name = "401";
  6152.         //            com.parameters.Add(reader.ReadUInt16());
  6153.         //            com.parameters.Add(reader.ReadUInt16());
  6154.         //            break;
  6155.         //        //case 0x402:
  6156.         //        //    com.Name = "402";
  6157.         //        //    com.parameters.Add(reader.ReadUInt16());
  6158.         //        //    break;
  6159.         //        //case 0x403:
  6160.         //        //    com.Name = "403";
  6161.         //        //    com.parameters.Add(reader.ReadUInt16());
  6162.         //        //    com.parameters.Add(reader.ReadUInt16());
  6163.         //        //    break;
  6164.         //        //case 0x404:
  6165.         //        //    com.Name = "404";
  6166.         //        //    com.parameters.Add(reader.ReadUInt16());
  6167.         //        //    break;
  6168.         //        //case 0x406:
  6169.         //        //    com.Name = "406";
  6170.         //        //    com.parameters.Add(reader.ReadUInt16());
  6171.         //        //    com.parameters.Add(reader.ReadUInt16());
  6172.         //        //    break;
  6173.         //        //case 0x407:
  6174.         //        //    com.Name = "407";
  6175.         //        //    com.parameters.Add(reader.ReadUInt16());
  6176.         //        //    com.parameters.Add(reader.ReadUInt16());
  6177.         //        //    break;
  6178.         //        //case 0x40D:
  6179.         //        //    com.Name = "40D";
  6180.         //        //    com.parameters.Add(reader.ReadUInt16());
  6181.         //        //    break;
  6182.         //        //case 0x40E:
  6183.         //        //    com.Name = "40E";
  6184.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6185.         //        //    break;
  6186.         //        //case 0x410:
  6187.         //        //    com.Name = "410";
  6188.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6189.         //        //    break;
  6190.         //        //case 0x411:
  6191.         //        //    com.Name = "411";
  6192.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6193.         //        //    break;
  6194.         //        //case 0x412:
  6195.         //        //    com.Name = "412";
  6196.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6197.         //        //    break;
  6198.         //        //case 0x414:
  6199.         //        //    com.Name = "414";
  6200.         //        //    com.parameters.Add(reader.ReadByte());
  6201.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6202.         //        //    break;
  6203.         //        //case 0x415:
  6204.         //        //    com.Name = "415";
  6205.         //        //    com.parameters.Add(reader.ReadByte());
  6206.         //        //    break;
  6207.         //        //case 0x416:
  6208.         //        //    com.Name = "416";
  6209.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6210.         //        //    break;
  6211.         //        //case 0x417:
  6212.         //        //    com.Name = "417";
  6213.         //        //    com.parameters.Add(reader.ReadUInt16()); //val
  6214.         //        //    break;
  6215.         //        //case 0x418:
  6216.         //        //    com.Name = "418";
  6217.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6218.         //        //    break;
  6219.         //        //case 0x419:
  6220.         //        //    com.Name = "419";
  6221.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6222.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6223.         //        //    break;
  6224.         //        //case 0x41A:
  6225.         //        //    com.Name = "41A";
  6226.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6227.         //        //    break;
  6228.         //        //case 0x41B:
  6229.         //        //    com.Name = "40B";
  6230.         //        //    com.parameters.Add(reader.ReadUInt16());
  6231.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6232.         //        //    break;
  6233.         //        //case 0x41C:
  6234.         //        //    com.Name = "41C";
  6235.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6236.         //        //    break;
  6237.         //        //case 0x421:
  6238.         //        //    com.Name = "420";
  6239.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6240.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6241.         //        //    break;24
  6242.         //        //case 0x411F:
  6243.         //        //    com.Name = "41F";
  6244.         //        //    com.paerameters.Add(reader.ReadUInt16()); //var
  6245.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6246.         //        //    break;
  6247.         //        //case 0x420:
  6248.         //        //    com.Name = "420";
  6249.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6250.         //        //    break;
  6251.         //        //case 0x422:
  6252.         //        //    com.Name = "422";
  6253.         //        //    com.parameters.Add(reader.ReadUInt16()); //var
  6254.         //        //    break;
  6255.         //        default:
  6256.         //            com.Name = "0x" + com.Id.ToString("X");
  6257.         //            break;
  6258.  
  6259.         //    }
  6260.         //    return com;
  6261.         //}
  6262.  
  6263.         private void checkNextFunction(BinaryReader reader, uint functionOffset, List<uint> scriptOrder)
  6264.         {
  6265.             if (functionOffset < reader.BaseStream.Length && reader.BaseStream.Position < reader.BaseStream.Length)
  6266.             {
  6267.                 int check = reader.ReadByte();
  6268.                 if (!functionOffsetList.Contains(functionOffset)
  6269.                     && !(check == 0)
  6270.                     && (!movOffsetList.Contains(functionOffset))
  6271.                     && (!scriptOrder.Contains(functionOffset)))
  6272.                 {
  6273.                     functionOffsetList.Add(functionOffset);
  6274.                 }
  6275.                 reader.BaseStream.Position--;
  6276.             }
  6277.         }
  6278.  
  6279.         public void getCommandSimplifiedBW2(string[] scriptsLine, ref int lineCounter, string space, List<int> visitedLine)
  6280.         {
  6281.             var line = scriptsLine[lineCounter];
  6282.             var commandList = line.Split(' ');
  6283.             string movId;
  6284.             string tipe;
  6285.             string varString, varString2, varString3, condition;
  6286.             //scriptBoxEditor.AppendText(commandList[1] + " ");
  6287.             switch (commandList[2].Split('(')[0])
  6288.             {
  6289.                 case "ApplyMovement":
  6290.                     scriptBoxEditor.AppendText(space + "" + commandList[2] + "( NPC_ID " + commandList[3] + ");\n");
  6291.                     scriptBoxEditor.AppendText(space + "{\n");
  6292.                     movId = commandList[6];
  6293.                     tipe = commandList[5];
  6294.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length; functionLineCounter++)
  6295.                     {
  6296.                         var line2 = scriptsLine[functionLineCounter];
  6297.                         if (commandList.Length < 8)
  6298.                         {
  6299.                             var offset2 = commandList[5].TrimStart('0').TrimStart('x');
  6300.                             int offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6301.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6302.                             {
  6303.                                 functionLineCounter++;
  6304.                                 do
  6305.                                 {
  6306.                                     line2 = scriptsLine[functionLineCounter];
  6307.                                     var movList = line2.Split(' ');
  6308.                                     if (line2.Length > 1)
  6309.                                         scriptBoxEditor.AppendText(space + " " + movList[2].ToString().TrimStart('m') + " TIMES " + movList[3] + "\n");
  6310.                                     functionLineCounter++;
  6311.                                 } while (!line2.Contains("End_Movement") && functionLineCounter + 1 < scriptsLine.Length);
  6312.                                 scriptBoxEditor.AppendText(space + "}\n");
  6313.                                 return;
  6314.                             }
  6315.                         }
  6316.                         else if (commandList.Length > 8 && functionLineCounter + 1 < scriptsLine.Length && scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[7].TrimStart('(')))
  6317.                         {
  6318.                             functionLineCounter++;
  6319.                             do
  6320.                             {
  6321.                                 line2 = scriptsLine[functionLineCounter];
  6322.                                 var movList = line2.Split(' ');
  6323.                                 if (line2.Length > 1)
  6324.                                     scriptBoxEditor.AppendText(space + " " + movList[2].ToString().TrimStart('m') + " " + movList[3].TrimStart('0').TrimStart('x') + "\n");
  6325.                                 functionLineCounter++;
  6326.                             } while (!line2.Contains("End_Movement") && functionLineCounter + 1 < scriptsLine.Length);
  6327.                             scriptBoxEditor.AppendText(space + "}\n");
  6328.                             return;
  6329.                         }
  6330.                     }
  6331.                     break;
  6332.                 case "AngryMessage":
  6333.                     if (commandList.Length <= 5 && textFile == null)
  6334.                     {
  6335.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , COLOR " + commandList[4] + " );\n");
  6336.                     }
  6337.                     else
  6338.                     {
  6339.                         short index = 0;
  6340.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6341.                         if (varString.Contains("M"))
  6342.                         {
  6343.                             index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  6344.                             scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  6345.                         }
  6346.                         else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  6347.                         {
  6348.                             var scriptAnLine = scriptBoxEditor.Lines;
  6349.                             int counterInverse = scriptAnLine.Length - 1;
  6350.                             while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  6351.                                 counterInverse--;
  6352.                             if (counterInverse > 0)
  6353.                             {
  6354.                                 var text = scriptAnLine[counterInverse].Split(' ');
  6355.                                 varString = text[text.Length - 1];
  6356.                                 scriptBoxEditor.AppendText(space + "ANGRY_MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6357.                                 varString = commandList[3].ToString();
  6358.                             }
  6359.                         }
  6360.                         else if (Int16.TryParse(varString, out index))
  6361.                             scriptBoxEditor.AppendText(space + "ANGRY_MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6362.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , COLOR " + commandList[4] + ", " + commandList[5] + " );\n");
  6363.                     }
  6364.                     break;
  6365.                 case "BorderedMessage":
  6366.                 case "EventGreyMessage":
  6367.                     if (textFile == null)
  6368.                     {
  6369.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "(  " +
  6370.                                                " , MESSAGE_ID " + commandList[3] + " , COLOR " + commandList[4] + " );\n");
  6371.                     }
  6372.                     else
  6373.                     {
  6374.                         short index = 0;
  6375.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6376.                         if (varString.Contains("M"))
  6377.                         {
  6378.                             index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  6379.                             scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  6380.                         }
  6381.                         else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  6382.                         {
  6383.                             var scriptAnLine = scriptBoxEditor.Lines;
  6384.                             int counterInverse = scriptAnLine.Length - 1;
  6385.                             while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString)
  6386.                                  || (scriptAnLine[counterInverse].Contains("+") || scriptAnLine[counterInverse].Contains(")") || scriptAnLine[counterInverse].Contains("-") || scriptAnLine[counterInverse].Contains("[")) && counterInverse > 0)
  6387.                                 counterInverse--;
  6388.                             if (counterInverse > 0)
  6389.                             {
  6390.                                 var text = scriptAnLine[counterInverse].Split(' ');
  6391.                                 varString = text[text.Length - 1];
  6392.                                 scriptBoxEditor.AppendText(space + "MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6393.                                 varString = commandList[3].ToString();
  6394.                             }
  6395.                         }
  6396.                         else if (Int16.TryParse(varString, out index))
  6397.                             scriptBoxEditor.AppendText(space + "MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6398.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , COLOR " + commandList[4] + " );\n");
  6399.                     }
  6400.                     break;
  6401.                 case "BubbleMessage":
  6402.                     varString2 = "";
  6403.                     if (commandList.Length <= 5 && textFile == null)
  6404.                     {
  6405.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , COLOR " + commandList[4] + " );\n");
  6406.                     }
  6407.                     else
  6408.                     {
  6409.                         short index = 0;
  6410.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6411.                         if (varString.Contains("M"))
  6412.                         {
  6413.                             index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  6414.                             scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  6415.                         }
  6416.                         else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  6417.                         {
  6418.                             var scriptAnLine = scriptBoxEditor.Lines;
  6419.                             int counterInverse = scriptAnLine.Length - 1;
  6420.                             while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  6421.                                 counterInverse--;
  6422.                             if (counterInverse > 0)
  6423.                             {
  6424.                                 var text = scriptAnLine[counterInverse].Split(' ');
  6425.                                 varString = text[text.Length - 1];
  6426.                                 scriptBoxEditor.AppendText(space + "BUBBLE_MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6427.                                 varString = commandList[3].ToString();
  6428.                             }
  6429.                         }
  6430.                         else if (Int16.TryParse(varString, out index))
  6431.                             scriptBoxEditor.AppendText(space + "BUBBLE_MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6432.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , COLOR " + commandList[4] + " );\n");
  6433.                     }
  6434.                     break;
  6435.                 case "CallMessageBox":
  6436.                     scriptBoxEditor.AppendText(space + "BORDER " + commandList[5] + " = " + commandList[2] + "( MESSAGE_ID " + commandList[3] +
  6437.                                                ", TYPE " + commandList[4] + " ");
  6438.                     if (commandList.Length > 5)
  6439.                         for (int i = 6; i < commandList.Length; i++)
  6440.                             scriptBoxEditor.AppendText(commandList[i] + " ");
  6441.                     scriptBoxEditor.AppendText(" );\n");
  6442.                     break;
  6443.                 case "CallRoutine":
  6444.                     scriptBoxEditor.AppendText(space + "CallRoutine( " + commandList[3] + ") \n" + space + "{\n");
  6445.                     //functionId = commandList[5];
  6446.                     varNameDictionary.Add(new Dictionary<int, string>());
  6447.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length - 1; functionLineCounter++)
  6448.                     {
  6449.                         var line2 = scriptsLine[functionLineCounter];
  6450.                         if (commandList.Length < 7)
  6451.                         {
  6452.                             int offset = 0;
  6453.                             if (commandList[3].Contains("0x"))
  6454.                             {
  6455.                                 var offset2 = commandList[3].TrimStart('0').TrimStart('x');
  6456.                                 offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6457.                             }
  6458.                             else
  6459.                             {
  6460.                                 offset = int.Parse(commandList[3]);
  6461.                             }
  6462.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6463.                             {
  6464.                                 varLevel++;
  6465.                                 readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6466.                                 varLevel--;
  6467.                                 return;
  6468.                             }
  6469.                         }
  6470.                         else if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[6].TrimStart('(')))
  6471.                         {
  6472.                             varLevel++;
  6473.                             readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6474.                             varLevel--;
  6475.                             return;
  6476.                         }
  6477.                     }
  6478.                     break;
  6479.                 case "ClearFlag":
  6480.                     var statusFlag = "FALSE";
  6481.                     if (commandList[4] == "1")
  6482.                         statusFlag = "TRUE";
  6483.                     scriptBoxEditor.AppendText(space + "FLAG " + getTextFromCondition(commandList[3], "FLA") +
  6484.                                                " = " + statusFlag + ";\n");
  6485.                     break;
  6486.                 case "CheckEnoughMoney":
  6487.                     newVar = checkStored(commandList, 3);
  6488.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVE_MONEY", "BOL");
  6489.                     scriptBoxEditor.AppendText(space + "HAVE_MONEY " + commandList[3] + " = " + commandList[2] + "( AMOUNT " + commandList[4] + " );\n");
  6490.                     break;
  6491.                 case "CheckItemBagSpace":
  6492.                     newVar = checkStored(commandList, 5);
  6493.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEMBAG_SPACE", "BOL");
  6494.                     newVar2 = checkStored(commandList, 3);
  6495.                     varString = commandList[3];
  6496.                     if (Utils.IsNaturalNumber(varString))
  6497.                         varString = getTextFromCondition(commandList[3], "ITE");
  6498.                     else
  6499.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar2, commandList[3], "ITE");
  6500.                     scriptBoxEditor.AppendText(space + "ITEMBAG_SPACE " + commandList[5] + " = " + commandList[2] + "( ITEM " + varString + " , " + "NUMBER " + commandList[4] + " );\n");
  6501.                     break;
  6502.                 case "CheckItemBagNumber":
  6503.                     newVar = checkStored(commandList, 5);
  6504.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEMBAG_NUMBER", "BOL");
  6505.                     varString = commandList[3];
  6506.                     if (Utils.IsNaturalNumber(varString))
  6507.                         varString = getTextFromCondition(commandList[3], "ITE");
  6508.                     else
  6509.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar2, commandList[3], "ITE");
  6510.                     scriptBoxEditor.AppendText(space + "ITEMBAG_NUMBER " + commandList[5] + " = " + commandList[2] + "( ITEM " + varString + " , " + "NUMBER " + commandList[4] + " );\n");
  6511.                     break;
  6512.                 case "CheckItemContainer":
  6513.                     newVar = checkStored(commandList, 4);
  6514.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_CONTAINER", "BOL");
  6515.                     varString = commandList[3];
  6516.                     if (Utils.IsNaturalNumber(varString))
  6517.                         varString = getTextFromCondition(commandList[3], "ITE");
  6518.                     else
  6519.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar2, commandList[3], "ITE");
  6520.                     scriptBoxEditor.AppendText(space + "IS_CONTAINER " + commandList[4] + " = " + commandList[2] + "( ITEM " + varString + " );\n");
  6521.                     break;
  6522.                 case "CompareStackCondition":
  6523.                     break;
  6524.                 case "CompareValueWithDerefVar":
  6525.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6526.                     varString2 = getTextFromCondition(getStoredMagic(varNameDictionary, varLevel, commandList, 4), cond);
  6527.                     condition = getCondition(scriptsLine, lineCounter);
  6528.                     scriptBoxEditor.AppendText(space + "If( " + varString + " " + condition + " " + varString2 + " )\n");
  6529.                     break;
  6530.                 case "CompareDerefVars":
  6531.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6532.                     varString2 = getTextFromCondition(getStoredMagic(varNameDictionary, varLevel, commandList, 4), cond);
  6533.                     condition = getCondition(scriptsLine, lineCounter);
  6534.                     scriptBoxEditor.AppendText(space + "If( " + varString + " " + condition + " " + varString2 + ")\n");
  6535.                     break;
  6536.                 case "Fanfare":
  6537.                     scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MUSIC_ID " + commandList[3] + ");\n");
  6538.                     break;
  6539.                 case "Goto":
  6540.                     scriptBoxEditor.AppendText(space + "Goto\n" + space + "{\n");
  6541.                     var functionId = commandList[5];
  6542.                     varNameDictionary.Add(new Dictionary<int, string>());
  6543.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length - 1; functionLineCounter++)
  6544.                     {
  6545.                         var line2 = scriptsLine[functionLineCounter];
  6546.                         if (commandList.Length < 6)
  6547.                         {
  6548.                             var offset2 = commandList[4].TrimStart('0').TrimStart('x');
  6549.                             int offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6550.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6551.                             {
  6552.                                 varLevel++;
  6553.                                 readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6554.                                 varLevel--;
  6555.                                 return;
  6556.                             }
  6557.                         }
  6558.                         else if (commandList.Length > 6 && scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[6].TrimStart('(')))
  6559.                         {
  6560.                             varLevel++;
  6561.                             readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6562.                             varLevel--;
  6563.                             return;
  6564.                         }
  6565.                     }
  6566.                     break;
  6567.                 case "When":
  6568.                     scriptBoxEditor.AppendText(space + "{\n");
  6569.                     functionId = commandList[5];
  6570.                     var type = commandList[4];
  6571.                     varNameDictionary.Add(new Dictionary<int, string>());
  6572.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length - 1; functionLineCounter++)
  6573.                     {
  6574.                         var line2 = scriptsLine[functionLineCounter];
  6575.                         if (commandList.Length < 8)
  6576.                         {
  6577.                             var offset2 = commandList[4].TrimStart('0').TrimStart('x');
  6578.                             int offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6579.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6580.                             {
  6581.                                 varLevel++;
  6582.                                 readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6583.                                 varLevel--;
  6584.                                 return;
  6585.                             }
  6586.                         }
  6587.                         else if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[6].TrimStart('(')))
  6588.                         {
  6589.                             varLevel++;
  6590.                             readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6591.                             varLevel--;
  6592.                             return;
  6593.                         }
  6594.  
  6595.                     }
  6596.                     break;
  6597.                 case "If":
  6598.                     scriptBoxEditor.AppendText(space + "{\n");
  6599.                     functionId = commandList[5];
  6600.                     type = commandList[4];
  6601.                     varNameDictionary.Add(new Dictionary<int, string>());
  6602.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length - 1; functionLineCounter++)
  6603.                     {
  6604.                         var line2 = scriptsLine[functionLineCounter];
  6605.                         if (commandList.Length < 8)
  6606.                         {
  6607.                             var offset2 = commandList[4].TrimStart('0').TrimStart('x');
  6608.                             int offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6609.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6610.                             {
  6611.                                 varLevel++;
  6612.                                 readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6613.                                 varLevel--;
  6614.                                 return;
  6615.                             }
  6616.                         }
  6617.                         else if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[6].TrimStart('(')))
  6618.                         {
  6619.                             varLevel++;
  6620.                             readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6621.                             varLevel--;
  6622.                             return;
  6623.                         }
  6624.                     }
  6625.                     break;
  6626.                 case "Jump":
  6627.                     scriptBoxEditor.AppendText(space + "Jump\n" + space + "{\n");
  6628.                     functionId = commandList[5];
  6629.                     varNameDictionary.Add(new Dictionary<int, string>());
  6630.                     for (var functionLineCounter = 0; functionLineCounter < scriptsLine.Length - 1; functionLineCounter++)
  6631.                     {
  6632.                         var line2 = scriptsLine[functionLineCounter];
  6633.                         if (commandList.Length < 7)
  6634.                         {
  6635.                             var offset2 = commandList[4].TrimStart('0').TrimStart('x');
  6636.                             int offset = int.Parse(offset2, System.Globalization.NumberStyles.HexNumber);
  6637.                             if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + offset))
  6638.                             {
  6639.                                 readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6640.                                 return;
  6641.                             }
  6642.                         }
  6643.                         else if (scriptsLine[functionLineCounter + 1].Contains("Offset: " + commandList[6].TrimStart('(')))
  6644.                         {
  6645.                             readFunction(scriptsLine, lineCounter, space, ref functionLineCounter, ref line2, visitedLine);
  6646.                             return;
  6647.                         }
  6648.                     }
  6649.                     break;
  6650.                 case "GenericMessage":
  6651.                     if (commandList.Length < 10)
  6652.                     {
  6653.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( INTERNAL NARC ID  " + commandList[3] +
  6654.                                                    " , MESSAGE_ID " + commandList[4] +
  6655.                                                    " , VIEW " + commandList[5] + " , TYPE " + commandList[6] + " );\n");
  6656.                     }
  6657.                     else
  6658.                     {
  6659.                         short index = 0;
  6660.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6661.                         if (varString.Contains("M"))
  6662.                         {
  6663.                             index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  6664.                             scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  6665.                         }
  6666.                         else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  6667.                         {
  6668.                             var scriptAnLine = scriptBoxEditor.Lines;
  6669.                             int counterInverse = scriptAnLine.Length - 1;
  6670.                             while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString)
  6671.                                 || scriptAnLine[counterInverse].Contains("+") || scriptAnLine[counterInverse].Contains(")") || scriptAnLine[counterInverse].Contains("-") & counterInverse > 0)
  6672.                                 counterInverse--;
  6673.                             if (counterInverse > 0)
  6674.                             {
  6675.                                 var text = scriptAnLine[counterInverse].Split(' ');
  6676.                                 varString = text[text.Length - 1];
  6677.                                 scriptBoxEditor.AppendText(space + "MESSAGE " + commandList[4] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6678.                                 varString = commandList[4].ToString();
  6679.                             }
  6680.                         }
  6681.                         else if (Int16.TryParse(varString, out index))
  6682.                             scriptBoxEditor.AppendText(space + "MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6683.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( INTERNAL NARC ID " + commandList[3] +
  6684.                                                    " , MESSAGE_ID " + varString +
  6685.                                                    " , VIEW " + commandList[5] + " , TYPE " + commandList[6] + " );\n");
  6686.                     }
  6687.                     break;
  6688.                 case "Multi":
  6689.                     addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 8), "MULTI_CHOSEN", "MUL");
  6690.                     mulString = new List<string>();
  6691.                     scriptBoxEditor.AppendText(space + "MULTI_CHOSEN " + commandList[8] + " = " + commandList[2] + "(X " + commandList[4] + " , " +
  6692.                         "Y " + commandList[5] + " , " +
  6693.                         "CURSOR " + commandList[6] + " , " +
  6694.                         "P_4 " + commandList[7] +
  6695.                         ");\n");
  6696.                     break;
  6697.                 case "NPCMessage":
  6698.                     if (textFile == null)
  6699.                     {
  6700.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( INTERNAL NARC ID " + commandList[3] +
  6701.                                                " , MESSAGE_ID " + commandList[4] + " , NPC_ID " + commandList[5] +
  6702.                                                    " , VIEW " + commandList[6] + " , TYPE " + commandList[7] + " );\n");
  6703.                     }
  6704.                     else
  6705.                     {
  6706.                         short index = 0;
  6707.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6708.                         varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  6709.                         if (varString.Contains("M"))
  6710.                         {
  6711.                             index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  6712.                             scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  6713.                         }
  6714.                         else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  6715.                         {
  6716.                             var scriptAnLine = scriptBoxEditor.Lines;
  6717.                             int counterInverse = scriptAnLine.Length - 1;
  6718.                             while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString)
  6719.                                  || (scriptAnLine[counterInverse].Contains("+") || scriptAnLine[counterInverse].Contains(")") || scriptAnLine[counterInverse].Contains("-") || scriptAnLine[counterInverse].Contains("[")) && counterInverse > 0)
  6720.                                 counterInverse--;
  6721.                             if (counterInverse > 0)
  6722.                             {
  6723.                                 var text = scriptAnLine[counterInverse].Split(' ');
  6724.                                 varString = text[text.Length - 1];
  6725.                                 scriptBoxEditor.AppendText(space + "MESSAGE " + commandList[4] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6726.                                 varString = commandList[4].ToString();
  6727.                             }
  6728.                         }
  6729.                         else if (Int16.TryParse(varString, out index))
  6730.                             scriptBoxEditor.AppendText(space + "MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  6731.                         scriptBoxEditor.AppendText(space + "" + commandList[2] + "( INTERNAL NARC ID  " + commandList[3] +
  6732.                                                " , MESSAGE_ID " + varString + " , OW_ID " + varString2 +
  6733.                                                    " , VIEW " + commandList[6] + " , TYPE " + commandList[7] + " );\n");
  6734.                     }
  6735.                     break;
  6736.                 case "PlayCry":
  6737.                     varString = getTextFromCondition(commandList[3], "POK");
  6738.                     scriptBoxEditor.AppendText(space + commandList[2] + "( POKE " + varString + ", " + commandList[4] + " );\n");
  6739.                     break;
  6740.                 case "PlaySSeq":
  6741.                     scriptBoxEditor.AppendText(space + "" + commandList[2] + "( SOUND_ID " + commandList[3] + ");\n");
  6742.                     break;
  6743.                 case "SetFlag":
  6744.                     scriptBoxEditor.AppendText(space + "FLAG " + getTextFromCondition(commandList[3], "FLA") + " = TRUE;" + "\n");
  6745.                     break;
  6746.                 case "SetStackVar":
  6747.                     {
  6748.                         varString = getStoredMagic(varNameDictionary, varLevel, null, 0);
  6749.                         condition = getCondition(scriptsLine, lineCounter);
  6750.                         var text = getTextFromCondition(commandList[3], cond);
  6751.                         if (scriptsLine[lineCounter + 5].Contains("CompareStackCondition") && scriptsLine[lineCounter + 4].Contains("CompareStackCondition"))
  6752.                         {
  6753.                             scriptBoxEditor.AppendText(space + "If( " + varString + " " + condition + " " + text + ") ");
  6754.                             condition = getCondition(scriptsLine, lineCounter + 4);
  6755.                             scriptBoxEditor.AppendText(" " + condition + " ");
  6756.                         }
  6757.                         else
  6758.                             scriptBoxEditor.AppendText(space + "If( " + varString + " " + condition + " " + text + ");\n");
  6759.                         break;
  6760.                     }
  6761.                 case "SetStackDerefVar":
  6762.                     newVar = checkStored(commandList, 3);
  6763.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6764.                     conditionList = new List<string>();
  6765.                     operatorList = new List<string>();
  6766.                     blockList = new List<string>();
  6767.                     int tempLineCounter = lineCounter;
  6768.                     List<string> firstMembers = new List<string>();
  6769.                     List<string> conditions = new List<string>();
  6770.                     List<string> secondMembers = new List<string>();
  6771.                     int numSetVar = 0;
  6772.                     bool setVarCompareConditionBlock = (scriptsLine[tempLineCounter].Contains("SetStackDerefVar(09)") || scriptsLine[tempLineCounter].Contains("StoreFlag")) && scriptsLine[tempLineCounter + 1].Contains("SetStackVar(08)");
  6773.                     bool setVarsetVarConditionBlock = scriptsLine[tempLineCounter].Contains("SetStackDerefVar(09)") && scriptsLine[tempLineCounter + 1].Contains("SetStackDerefVar(09)") && scriptsLine[tempLineCounter + 2].Contains("CompareStackCondition");
  6774.                     if (setVarCompareConditionBlock || setVarsetVarConditionBlock)
  6775.                     {
  6776.                         while ((scriptsLine[tempLineCounter].Contains("SetStackDerefVar(09)") || scriptsLine[tempLineCounter].Contains("StoreFlag")) && scriptsLine[tempLineCounter + 1].Contains("SetStackVar(08)")
  6777.                             || scriptsLine[tempLineCounter].Contains("SetStackDerefVar(09)") && scriptsLine[tempLineCounter + 1].Contains("SetStackDerefVar(09)") && scriptsLine[tempLineCounter + 2].Contains("CompareStackCondition"))
  6778.                         {
  6779.                             numSetVar++;
  6780.  
  6781.                             //First Member
  6782.                             var next = scriptsLine[tempLineCounter];
  6783.                             commandList = next.Split(' ');
  6784.                             newVar = checkStored(commandList, 3);
  6785.                             varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6786.                             if (next.Contains("Flag"))
  6787.                                 firstMembers.Add("FLAG " + varString);
  6788.                             else
  6789.                                 firstMembers.Add(varString);
  6790.                             tempLineCounter++;
  6791.  
  6792.                             //Second Member
  6793.                             next = scriptsLine[tempLineCounter];
  6794.                             commandList = next.Split(' ');
  6795.                             newVar = checkStored(commandList, 3);
  6796.                             varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6797.                             //scriptBoxEditor.AppendText(space + "SET VAR " + varString + ";\n");
  6798.                             temp2 = varString;
  6799.  
  6800.                             secondMembers.Add(getTextFromCondition(temp2, cond));
  6801.                             tempLineCounter++;
  6802.  
  6803.                             //Condition
  6804.                             next = scriptsLine[tempLineCounter];
  6805.                             conditions.Add(getCondition(scriptsLine, tempLineCounter - 1));
  6806.                             tempLineCounter++;
  6807.                         }
  6808.                         scriptBoxEditor.AppendText(space + "If( ");
  6809.                         for (int i = 0; i < numSetVar; i++)
  6810.                         {
  6811.                             string extCondition = "";
  6812.                             if (i != 0)
  6813.                             {
  6814.                                 extCondition = getCondition(scriptsLine, tempLineCounter - 1);
  6815.                                 scriptBoxEditor.AppendText(" " + extCondition + " ");
  6816.                             }
  6817.                             if (numSetVar > 1)
  6818.                                 scriptBoxEditor.AppendText("( " + firstMembers[i] + " " + conditions[i] + " " + secondMembers[i] + " )");
  6819.                             else
  6820.                                 scriptBoxEditor.AppendText(firstMembers[i] + " " + conditions[i] + " " + secondMembers[i]);
  6821.                         }
  6822.                         scriptBoxEditor.AppendText("); \n");
  6823.                     }
  6824.                     else
  6825.                     {
  6826.                         scriptBoxEditor.AppendText(space + "SET VAR " + varString + ";\n");
  6827.                         break;
  6828.                     }
  6829.                     lineCounter = tempLineCounter - 1;
  6830.                     break;
  6831.                 case "SetStackFlag":
  6832.                     newVar = checkStored(commandList, 3);
  6833.                     varString = getTextFromCondition(commandList[3], "FLA");
  6834.                     if (Utils.IsNaturalNumber(varString))
  6835.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FLAG " + newVar, "BOL");
  6836.                     else
  6837.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar, varString, "BOL");
  6838.                     temp = newVar.ToString();
  6839.                     break;
  6840.                 case "SetTextScriptMessage":
  6841.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6842.                     scriptBoxEditor.AppendText(space + commandList[2] + "( MESSAGE_TEXT " + commandList[3] + " , " +
  6843.                         "BOX_TEXT " + commandList[4] + " , " +
  6844.                         "SCRIPT " + commandList[5] + " ");
  6845.                     if (textFile != null)
  6846.                     {
  6847.                         var text2 = "";
  6848.                         text2 = getTextFromVar(scriptBoxEditor, commandList, varString, text2);
  6849.                     }
  6850.                     scriptBoxEditor.AppendText(");\n");
  6851.                     break;
  6852.                 case "SetTrainerId":
  6853.                     scriptBoxEditor.AppendText(space + "TRAINER " + commandList[3] + " = TRUE;" + "\n");
  6854.                     break;
  6855.                 case "SetVarAlter":
  6856.                     scriptBoxEditor.AppendText(space + "VAR NAME " + commandList[3] + " = [ALTER]" + ";\n");
  6857.                     break;
  6858.                 case "SetVarBag":
  6859.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6860.                     scriptBoxEditor.AppendText(space + "VAR BAG " + commandList[3] + " = " + varString + ";\n");
  6861.                     break;
  6862.                 case "SetVarColoredItem":
  6863.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6864.                     if (Utils.IsNaturalNumber(varString))
  6865.                         varString = getTextFromCondition(varString, "ITE");
  6866.                     scriptBoxEditor.AppendText(space + "VAR COLORED ITEM " + commandList[3] + " = " + varString + ";\n");
  6867.                     break;
  6868.                 case "SetVarHero":
  6869.                     scriptBoxEditor.AppendText(space + "VAR NAME " + commandList[3] + " = [HIRO]" + ";\n");
  6870.                     break;
  6871.                 case "SetVarItem":
  6872.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6873.                     if (Utils.IsNaturalNumber(varString))
  6874.                         varString = getTextFromCondition(varString, "ITE");
  6875.                     scriptBoxEditor.AppendText(space + "VAR ITEM " + commandList[3] + " = " + varString + ";\n");
  6876.                     break;
  6877.                 case "SetVarItemNumber":
  6878.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6879.                     varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  6880.                     if (Utils.IsNaturalNumber(varString))
  6881.                         varString = getTextFromCondition(varString, "ITE");
  6882.                     scriptBoxEditor.AppendText(space + "VAR ITEM " + commandList[3] + " = " + commandList[2] + "( " + varString + " , " + commandList[5] + " , " + commandList[6] + " );\n");
  6883.                     break;
  6884.                 case "SetVarBattleItem":
  6885.                     scriptBoxEditor.AppendText(space + "VAR BATTLE ITEM " + commandList[3] + " = " + commandList[4] + ";\n");
  6886.                     break;
  6887.                 case "SetVarMove":
  6888.                     newVar = checkStored(commandList, 4);
  6889.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6890.                     scriptBoxEditor.AppendText(space + "VAR MOVE " + commandList[3] + " = " + varString + ";\n");
  6891.                     break;
  6892.                 case "SetVarNations":
  6893.                     newVar = checkStored(commandList, 4);
  6894.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6895.                     scriptBoxEditor.AppendText(space + "VAR NATION " + commandList[3] + " = " + varString + ";\n");
  6896.                     break;
  6897.                 case "SetVarNumberBound":
  6898.                     newVar = checkStored(commandList, 4);
  6899.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6900.                     scriptBoxEditor.AppendText(space + "VAR NUM " + commandList[3] + " = " + commandList[2] + "( " + varString + " , BOUND " + commandList[5] + " );\n");
  6901.                     break;
  6902.                 case "SetVarNickPokémon":
  6903.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6904.                     scriptBoxEditor.AppendText(space + "VAR NICK " + commandList[3] + " = " + varString + ";\n");
  6905.                     break;
  6906.                 case "SetVarNumber":
  6907.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6908.                     scriptBoxEditor.AppendText(space + "VAR NUM " + commandList[3] + " = " + varString + ";\n");
  6909.                     break;
  6910.                 case "SetVarPartyPokemon":
  6911.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6912.                     scriptBoxEditor.AppendText(space + "VAR POKE " + commandList[3] + " = " + varString + ";\n");
  6913.                     break;
  6914.                 case "SetVarPartyPokèmonNick":
  6915.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6916.                     scriptBoxEditor.AppendText(space + "VAR NICK " + commandList[3] + " = " + varString + ";\n");
  6917.                     break;
  6918.                 case "SetVarPokèmon":
  6919.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6920.                     if (Utils.IsNaturalNumber(varString))
  6921.                         varString = getTextFromCondition(commandList[4], "POK");
  6922.                     scriptBoxEditor.AppendText(space + "VAR POKE " + commandList[3] + " = " + varString + ";\n");
  6923.                     break;
  6924.                 case "SetVarPokèmonDream":
  6925.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6926.                     if (Utils.IsNaturalNumber(varString))
  6927.                         varString = getTextFromCondition(commandList[3], "POK");
  6928.                     scriptBoxEditor.AppendText(space + "VAR POKE " + commandList[4] + " = " + varString + ";\n");
  6929.                     break;
  6930.                 case "SetVarPokèLottoNumber":
  6931.                     newVar = checkStored(commandList, 4);
  6932.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6933.                     scriptBoxEditor.AppendText(space + "VAR L " + commandList[3] + " = " + commandList[2] + "( " + varString + " , " + commandList[5] + " );\n");
  6934.                     break;
  6935.                 case "SetVarPhraseBoxInput":
  6936.                     newVar = checkStored(commandList, 4);
  6937.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6938.                     scriptBoxEditor.AppendText(space + "VAR STRING " + commandList[3] + " = " + varString + ";\n");
  6939.                     break;
  6940.                 case "SetVarRival":
  6941.                     scriptBoxEditor.AppendText(space + "VAR NAME " + commandList[3] + " = [RIVAL]" + ";\n");
  6942.                     break;
  6943.                 case "SetVarTrainer":
  6944.                     scriptBoxEditor.AppendText(space + "VAR TRAINER " + commandList[3] + " = TRUE" + ";\n");
  6945.                     break;
  6946.                 case "SetVarTrainer2":
  6947.                     scriptBoxEditor.AppendText(space + "VAR TRAINER_2 " + commandList[3] + " = TRUE" + ";\n");
  6948.                     break;
  6949.                 case "SetVarType":
  6950.                     newVar = checkStored(commandList, 4);
  6951.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6952.                     scriptBoxEditor.AppendText(space + "VAR TYPE " + commandList[3] + " = " + varString + ";\n");
  6953.                     break;
  6954.                 case "ShowMessageAt":
  6955.                     scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , TYPE " + commandList[4] + " ");
  6956.                     readMessage(scriptBoxEditor, commandList, 5);
  6957.                     scriptBoxEditor.AppendText(" );\n");
  6958.                     break;
  6959.                 case "ShowMoneyBox":
  6960.                     scriptBoxEditor.AppendText(space + "" + commandList[2] + "( X " + commandList[3] + " , Y " + commandList[4] + " ");
  6961.                     scriptBoxEditor.AppendText(" );\n");
  6962.                     break;
  6963.                 case "StoreBCSkyscraperTrainerNumber":
  6964.                     newVar = checkStored(commandList, 3);
  6965.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "TRAINER_NUMBER", "NOR");
  6966.                     scriptBoxEditor.AppendText(space + "TRAINER_NUMBER " + commandList[3] + "  = " + commandList[2] + "();\n");
  6967.                     break;
  6968.                 case "StoreDayPart":
  6969.                     newVar = checkStored(commandList, 3);
  6970.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "DAY_PART", "NOR");
  6971.                     scriptBoxEditor.AppendText(space + "DAY_PART " + commandList[3] + " = " + commandList[2] + "();\n");
  6972.                     break;
  6973.                 case "StoreHeroOrientation":
  6974.                     newVar = checkStored(commandList, 3);
  6975.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FACE_ORIENTATION", "NOR");
  6976.                     scriptBoxEditor.AppendText(space + "FACE_ORIENTATION " + commandList[3] + "  = " + commandList[2] + "();\n");
  6977.                     break;
  6978.                 case "StoreSeason":
  6979.                     addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "SEASON", "NOR");
  6980.                     scriptBoxEditor.AppendText(space + "SEASON " + commandList[3] + " = " + commandList[2] + "();\n");
  6981.                     break;
  6982.                 case "StoreValueInVar":
  6983.                     newVar = checkStored(commandList, 3);
  6984.                     newVar2 = checkStored(commandList, 4);
  6985.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  6986.                     if (!Utils.IsNaturalNumber(commandList[4]))
  6987.                     {
  6988.                         if (cond == "FLA")
  6989.                             addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FLAG_" + commandList[3], cond);
  6990.                         else
  6991.                             addToVarNameDictionary(varNameDictionary, varLevel, newVar, commandList[3], cond);
  6992.                     }
  6993.                     varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  6994.                     if (cond == "FLA")
  6995.                         scriptBoxEditor.AppendText(space + "VAR_FLAG " + varString2 + " = " + (Boolean.Parse(commandList[4])).ToString() + "\n");
  6996.                     else
  6997.                         scriptBoxEditor.AppendText(space + "VAR " + varString2 + " = " + commandList[4] + "\n");
  6998.                     break;
  6999.                 case "StoreVarInVar":
  7000.                     newVar = checkStored(commandList, 3);
  7001.                     newVar2 = checkStored(commandList, 4);
  7002.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7003.                     if (!Utils.IsNaturalNumber(commandList[4]))
  7004.                     {
  7005.                         if (cond == "FLA")
  7006.                             addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FLAG_" + commandList[3], cond);
  7007.                         else
  7008.                             addToVarNameDictionary(varNameDictionary, varLevel, newVar, commandList[3], cond);
  7009.                     }
  7010.                     varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7011.                     if (cond == "FLA")
  7012.                         scriptBoxEditor.AppendText(space + "VAR_FLAG " + varString2 + " = " + (Boolean.Parse(commandList[4])).ToString() + "\n");
  7013.                     else
  7014.                         scriptBoxEditor.AppendText(space + "VAR " + varString2 + " = " + commandList[4] + "\n");
  7015.                     break;
  7016.                 case "StoreDay":
  7017.                     newVar = checkStored(commandList, 3);
  7018.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "DAY", "DAY");
  7019.                     scriptBoxEditor.AppendText(space + "DAY " + commandList[3] + " = " + commandList[2] + "();\n");
  7020.                     break;
  7021.                 case "StoreDerefVarInVar":
  7022.                     newVar = checkStored(commandList, 3);
  7023.                     newVar2 = checkStored(commandList, 4);
  7024.                     if (!Utils.IsNaturalNumber(commandList[4]))
  7025.                         addToVarNameDictionary(varNameDictionary, varLevel, newVar, commandList[3], "NOR");
  7026.                     varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7027.                     varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7028.                     if (scriptsLine[lineCounter + 2].Contains("CallStd"))
  7029.                         varString = getTextFromCondition(commandList[4], "ITE");
  7030.                     scriptBoxEditor.AppendText(space + "VAR_CALL " + varString2 + " = " + varString + "\n");
  7031.                     break;
  7032.                 case "StoreVarMessage":
  7033.                     newVar = checkStored(commandList, 3);
  7034.                     addToVarNameDictionary(varNameDictionary, varLevel, newVar, "MESSAGE_" + commandList[4], "NOR");
  7035.                     scriptBoxEditor.AppendText(space + "VAR " + commandList[3] + " = MESSAGE_" + commandList[4] + ";\n");
  7036.                     break;
  7037.  
  7038.                 //        case "66":
  7039.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "66_VALUE", "NOR");
  7040.                 //            scriptBoxEditor.AppendText(space + "66_VALUE " + commandList[3] + " = " + commandList[2] + "( NPC " + commandList[4] + " );\n");
  7041.                 //            break;
  7042.                 //        case "SetVar(83)":
  7043.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "83_VALUE", "NOR");
  7044.                 //            scriptBoxEditor.AppendText(space + "83_VALUE " + commandList[3] + " = " + commandList[2] + "();\n");
  7045.                 //            break;
  7046.                 //        case "8A":
  7047.                 //            var varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7048.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 4), "8A_VALUE", "NOR");
  7049.                 //            scriptBoxEditor.AppendText(space + "8A_VALUE " + commandList[4] + " = " + commandList[2] + "( TRAINER_ID " + varString + " );\n");
  7050.                 //            break;
  7051.                 //        case "92":
  7052.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7053.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 4), "92_VALUE", "NOR");
  7054.                 //            scriptBoxEditor.AppendText(space + "92_VALUE " + commandList[4] + " = " + commandList[2] + "( TRAINER_ID " + varString + " );\n");
  7055.                 //            break;
  7056.                 //        case "E1":
  7057.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "E1_VALUE", "NOR");
  7058.                 //            scriptBoxEditor.AppendText(space + "E1_VALUE " + commandList[3] + " = " + commandList[2] + "();\n");
  7059.                 //            break;
  7060.                 //        case "17B":
  7061.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "17B_STATUS", "NOR");
  7062.                 //            scriptBoxEditor.AppendText(space + "17B_STATUS " + commandList[3] + " = " + commandList[2] + "();\n");
  7063.                 //            break;
  7064.                 //        case "1BA":
  7065.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7066.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 4), "1BA_VALUE", "NOR");
  7067.                 //            scriptBoxEditor.AppendText(space + "1BA_VALUE " + commandList[4] + " = " + commandList[2] + "( " + varString + " );\n");
  7068.                 //            break;
  7069.                 //        case "237":
  7070.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 5), "237_STATUS", "NOR");
  7071.                 //            scriptBoxEditor.AppendText(space + "237_STATUS " + commandList[5] + " = " + commandList[2] + "( POKE " + commandList[3] + " , " + commandList[4] + " );\n");
  7072.                 //            break;
  7073.                 //        case "238":
  7074.                 //            scriptBoxEditor.AppendText(space + "VAR " + commandList[4] + " = " + commandList[2] + "(P_1 " + commandList[3] + ");\n");
  7075.                 //            break;
  7076.                 //        case "23D":
  7077.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7078.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 4), "MESSAGE_ID", "NOR");
  7079.                 //            scriptBoxEditor.AppendText(space + "MESSAGE_ID " + commandList[4] + " = " + commandList[2] + "( " + varString + " );\n");
  7080.                 //            break;
  7081.                 //        case "2AD":
  7082.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "OW_ID", "NOR");
  7083.                 //            scriptBoxEditor.AppendText(space + "UNK " + commandList[3] + ", OW_ID " + commandList[4] + " = " + commandList[2] + "();\n");
  7084.                 //            break;
  7085.                 //        case "2D1":
  7086.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "2D1_STATUS", "NOR");
  7087.                 //            scriptBoxEditor.AppendText(space + "2D1_STATUS " + commandList[3] + " = " + commandList[2] + "();\n");
  7088.                 //            break;
  7089.                 //        case "AddPeople":
  7090.                 //            scriptBoxEditor.AppendText(space + "" + commandList[2] + "( OW_ID " + commandList[3] + ");\n");
  7091.                 //            break;
  7092.                 //        case "AffinityCheck":
  7093.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "PEOPLE_NUM", "NOR");
  7094.                 //            scriptBoxEditor.AppendText(space + "PEOPLE_NUM " + commandList[3] + " = " + commandList[2] + "();\n");
  7095.                 //            break;
  7096.  
  7097.                 //
  7098.                 //        case "ChangeOwPosition":
  7099.                 //            scriptBoxEditor.AppendText(space + "" + commandList[2] + "( OW_ID " + commandList[3] +
  7100.                 //                                       ", X " + commandList[4] + ", Y " + commandList[5] + ");\n");
  7101.                 //            break;
  7102.                 //        case "ChangeOwPosition2":
  7103.                 //            scriptBoxEditor.AppendText(space + "" + commandList[2] + "( OW_ID " + commandList[3] +
  7104.                 //                                       ", P_2 " + commandList[4] + ");\n");
  7105.                 //            break;
  7106.                 //        case "CheckKeyItem":
  7107.                 //            newVar = checkStored(commandList, 4);
  7108.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVEKEY_ITEM", "BOL");
  7109.                 //            scriptBoxEditor.AppendText(space + "HAVEKEY_ITEM " + commandList[4] + " = " + commandList[2] + "( ITEM " + commandList[3] + " );\n");
  7110.                 //            break;
  7111.                 //        case "CheckBattleExamAvailable":
  7112.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "IS_AVAILABLE", "BOL");
  7113.                 //            scriptBoxEditor.AppendText(space + "IS_AVAILABLE " + commandList[3] + " = " + commandList[2] + "();\n");
  7114.                 //            break;
  7115.                 //        case "CheckBattleExamStarted":
  7116.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "IS_STARTED", "BOL");
  7117.                 //            scriptBoxEditor.AppendText(space + "IS_STARTED " + commandList[3] + " = " + commandList[2] + "();\n");
  7118.                 //            break;
  7119.                 //        case "CheckDreamFunction":
  7120.                 //            newVar = checkStored(commandList, 4);
  7121.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FUNC_STATUS", "BOL");
  7122.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7123.                 //            scriptBoxEditor.AppendText(space + "FUNC_STATUS " + commandList[4] + " = " + commandList[2] + "( FUNC " + varString + " );\n");
  7124.                 //            break;
  7125.                 //        case "CheckEgg":
  7126.                 //            newVar = checkStored(commandList, 3);
  7127.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_EGG", "BOL");
  7128.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7129.                 //            scriptBoxEditor.AppendText(space + "IS_EGG " + commandList[3] + " = " + commandList[2] + "( POKE " + varString + " );\n");
  7130.                 //            break;
  7131.  
  7132.                 //        case "CheckFriend":
  7133.                 //            newVar = checkStored(commandList, 3);
  7134.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVE_FRIEND", "BOL");
  7135.                 //            scriptBoxEditor.AppendText(space + "HAVE_FRIEND " + commandList[3] + " = " + commandList[2] + "();\n");
  7136.                 //            break;
  7137.                 //        case "CheckHavePokèmon":
  7138.                 //            newVar = checkStored(commandList, 6);
  7139.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVE_POKEMON", "BOL");
  7140.                 //            varString = getTextFromCondition(commandList[3], "POK");
  7141.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  7142.                 //            scriptBoxEditor.AppendText(space + "HAVE_POKEMON " + commandList[6] + " = " + commandList[2] + "( POKE " + varString + " , " + commandList[4] + " , " + varString2 + " );\n");
  7143.                 //            break;
  7144.  
  7145.                 //        case "CheckItemInterestingBag":
  7146.                 //            newVar = checkStored(commandList, 4);
  7147.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HASINT_ITEM", "BOL");
  7148.                 //            scriptBoxEditor.AppendText(space + "HASINT_ITEM " + commandList[4] + " = " + commandList[2] + "( INTEREST " + commandList[3] + " );\n");
  7149.                 //            break;
  7150.                 //        case "CheckLock":
  7151.                 //            newVar = checkStored(commandList, 3);
  7152.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_LOCKED", "BOL");
  7153.                 //            scriptBoxEditor.AppendText(space + "IS_LOCKED " + commandList[3] + " = " + commandList[2] + "();\n");
  7154.                 //            break;
  7155.                 //        case "CheckMoney":
  7156.                 //            newVar = checkStored(commandList, 3);
  7157.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "MONEY_STATUS", "BOL");
  7158.                 //            scriptBoxEditor.AppendText(space + "MONEY_STATUS " + commandList[3] + " = " + commandList[2] + "( AMOUNT " + commandList[4] + ", " + commandList[5] + " );\n");
  7159.                 //            break;
  7160.                 //        case "CheckPokèdexStatus":
  7161.                 //            newVar = checkStored(commandList, 3);
  7162.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_ACTIVE", "BOL");
  7163.                 //            scriptBoxEditor.AppendText(space + "IS_ACTIVE " + commandList[3] + " = " + commandList[2] + "( POKEDEX " + commandList[4] + " );\n");
  7164.                 //            break;
  7165.                 //        case "CheckPokèmonSeen":
  7166.                 //            newVar = checkStored(commandList, 5);
  7167.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVE_SEEN", "BOL");
  7168.                 //            scriptBoxEditor.AppendText(space + "HAVE_SEEN " + commandList[5] + " = " + commandList[2] + "( " + commandList[3] + " POKEMON " + commandList[4] + " );\n");
  7169.                 //            break;
  7170.                 //        case "CheckPokèmonNickname":
  7171.                 //            newVar = checkStored(commandList, 3);
  7172.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_DEFAULT", "BOL");
  7173.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7174.                 //            scriptBoxEditor.AppendText(space + "IS_DEFAULT " + commandList[3] + " = " + commandList[2] + "( POKEMON " + varString + " );\n");
  7175.                 //            break;
  7176.                 //        case "CheckPokèrus":
  7177.                 //            newVar = checkStored(commandList, 3);
  7178.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVE_POKERUS", "BOL");
  7179.                 //            scriptBoxEditor.AppendText(space + "HAVE_POKERUS " + commandList[3] + " = " + commandList[2] + "();\n");
  7180.                 //            break;
  7181.                 //        case "CheckRelocatorPassword":
  7182.                 //            newVar = checkStored(commandList, 6);
  7183.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PASSWORD_STATUS", "BOL");
  7184.                 //            scriptBoxEditor.AppendText(space + "PASSWORD_STATUS " + commandList[6] + " = " + commandList[2] + "( ITEM " + commandList[3] + " , " + "WORD_1 " + commandList[4] + " , WORD_2 " + commandList[5] + " );\n");
  7185.                 //            break;
  7186.                 //        case "CheckSendSaveCG":
  7187.                 //            newVar = checkStored(commandList, 4);
  7188.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "SEND_STATUS", "BOL");
  7189.                 //            scriptBoxEditor.AppendText(space + "SEND_STATUS " + commandList[4] + " = " + commandList[2] + "( " + commandList[3] + " );\n");
  7190.                 //            break;
  7191.                 //        case "CheckSpacePokèmonDream":
  7192.                 //            newVar = checkStored(commandList, 4);
  7193.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAVEDREAM_SPACE", "BOL");
  7194.                 //            scriptBoxEditor.AppendText(space + "HAVEDREAM_SPACE " + commandList[4] + " = " + commandList[2] + "( POKE " + commandList[3] + " );\n");
  7195.                 //            break;
  7196.                 //        case "CheckChosenSpecies":
  7197.                 //            newVar = checkStored(commandList, 4);
  7198.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "RESULT", "BOL");
  7199.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  7200.                 //            scriptBoxEditor.AppendText(space + "RESULT " + commandList[4] + " = " + commandList[2] + "( SPECIE " + commandList[3] + " , POKE " + varString + " );\n");
  7201.                 //            break;
  7202.                 //        case "CheckWireless":
  7203.                 //            newVar = checkStored(commandList, 3);
  7204.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "WIRELESS_ACTIVATED", "BOL");
  7205.                 //            scriptBoxEditor.AppendText(space + "WIRELESS_ACTIVATED " + commandList[3] + " = " + commandList[2] + "();\n");
  7206.                 //            break;
  7207.                 //        case "ChooseWifiSprite":
  7208.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7209.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 4), "WIFI_SPRITE_CHOSEN", "NOR");
  7210.                 //            scriptBoxEditor.AppendText(space + "WIFI_SPRITE_CHOSEN " + commandList[4] + " = " + commandList[2] + "( " + varString + " );\n");
  7211.                 //            break;
  7212.  
  7213.                 //        case "ChooseInterestingItem":
  7214.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  7215.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 5), "HAS_CHOSEN", "BOL");
  7216.                 //            scriptBoxEditor.AppendText(space + "HAS_CHOSEN " + commandList[5] + " = " + commandList[2] + "( " + commandList[3] + " , " + commandList[4] + " );\n");
  7217.                 //            break;
  7218.                 //        case "ChooseMoveForgot":
  7219.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7220.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "HAS_CHOSEN", "BOL");
  7221.                 //            scriptBoxEditor.AppendText(space + "HAS_CHOSEN " + commandList[3] + " = " + commandList[2] + "( " + commandList[4] + " , " + commandList[5] + " , " + commandList[6] + " );\n");
  7222.                 //            break;
  7223.  
  7224.                 //        case "ChooseUnityFloor":
  7225.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 6);
  7226.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 6), "HAS_CHOSEN", "BOL");
  7227.                 //            scriptBoxEditor.AppendText(space + "HAS_CHOSEN " + commandList[6] + " = " + commandList[2] + "( " + commandList[3] + " , " + commandList[4] + " , " + commandList[5] + " );\n");
  7228.                 //            break;
  7229.  
  7230.                 //        case "ClearTrainerId":
  7231.                 //            scriptBoxEditor.AppendText(space + "TRAINER " + commandList[3] + " = FALSE;" + "\n");
  7232.                 //            break;
  7233.  
  7234.  
  7235.                 //        case "Condition":
  7236.                 //            break;
  7237.                 //        case "CopyVar":
  7238.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7239.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), varString, "NOR");
  7240.                 //            scriptBoxEditor.AppendText(space + "VAR " + commandList[3] + " = " + varString + ";\n");
  7241.                 //            break;
  7242.                
  7243.                 //        case "DreamBattle":
  7244.                 //            newVar = checkStored(commandList, 4);
  7245.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BATTLE_STATUS", "BOL");
  7246.                 //            scriptBoxEditor.AppendText(space + "BATTLE_STATUS " + commandList[4] + " = " + commandList[2] + "( POKE " + commandList[3] + " );\n");
  7247.                 //            break;
  7248.                 //        case "DoubleMessage":
  7249.                 //            if (commandList.Length <= 10)
  7250.                 //            {
  7251.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( COSTANT " + commandList[3] + " , COSTANT " + commandList[4] +
  7252.                 //                                       " , BLACK_MESSAGE " + commandList[5] + " , WHITE_MESSAGE " + commandList[6] +
  7253.                 //                                           " , OW_ID " + commandList[7] + " , VIEW " + commandList[8] + " );\n");
  7254.                 //            }
  7255.                 //            else
  7256.                 //            {
  7257.                 //                short index = 0;
  7258.                 //                varString = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  7259.                 //                varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 6);
  7260.                 //                if (varString.Contains("M") && varString2.Contains("M"))
  7261.                 //                {
  7262.                 //                    index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  7263.                 //                    int index2 = Int16.Parse(varString2.ToCharArray()[varString2.Length - 1].ToString());
  7264.                 //                    scriptBoxEditor.AppendText(space + "BLACK_MESSAGE" + varString + " = ' " + textFile.messageList[index] + " ';\n");
  7265.                 //                    scriptBoxEditor.AppendText(space + "WHITE_MESSAGE" + varString2 + " = ' " + textFile.messageList[index] + " ';\n");
  7266.                 //                }
  7267.                 //                else if (Int16.TryParse(varString, out index) && (Int16.TryParse(varString2, out index)))
  7268.                 //                {
  7269.                 //                    scriptBoxEditor.AppendText(space + "BLACK_MESSAGE" + "MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7270.                 //                    scriptBoxEditor.AppendText(space + "WHITE_MESSAGE" + "MESSAGE_" + varString2 + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7271.                 //                }
  7272.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( COSTANT " + commandList[3] + " , COSTANT " + commandList[4] +
  7273.                 //                                       " , BLACK_MESSAGE " + commandList[5] + " , WHITE_MESSAGE " + commandList[6] +
  7274.                 //                                           " , OW_ID " + commandList[7] + " , VIEW " + commandList[8] + " );\n");
  7275.                 //            }
  7276.                 //            break;
  7277.                 //        case "EventGreyMessage":
  7278.                 //            varString2 = "";
  7279.                 //            if (commandList.Length <= 6 && textFile == null)
  7280.                 //            {
  7281.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , TYPE " + commandList[4] + " );\n");
  7282.                 //            }
  7283.                 //            else
  7284.                 //            {
  7285.                 //                short index = 0;
  7286.                 //                varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7287.                 //                if (varString.Contains("M"))
  7288.                 //                {
  7289.                 //                    index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  7290.                 //                    scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  7291.                 //                }
  7292.                 //                else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  7293.                 //                {
  7294.                 //                    var scriptAnLine = scriptBoxEditor.Lines;
  7295.                 //                    int counterInverse = scriptAnLine.Length - 1;
  7296.                 //                    while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  7297.                 //                        counterInverse--;
  7298.                 //                    if (counterInverse > 0)
  7299.                 //                    {
  7300.                 //                        var text = scriptAnLine[counterInverse].Split(' ');
  7301.                 //                        varString = text[text.Length - 1];
  7302.                 //                        scriptBoxEditor.AppendText(space + "GREY_MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7303.                 //                        varString = commandList[3].ToString();
  7304.                 //                    }
  7305.                 //                }
  7306.                 //                else if (Int16.TryParse(varString, out index))
  7307.                 //                    scriptBoxEditor.AppendText(space + "GREY_MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7308.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , TYPE " + commandList[4] + " );\n");
  7309.                 //            }
  7310.                 //            break;
  7311.  
  7312.                 //        case "Lock":
  7313.                 //            scriptBoxEditor.AppendText(space + "" + commandList[2] + "( OW_ID " + commandList[3] + ");\n");
  7314.                 //            break;
  7315.  
  7316.  
  7317.                 //  
  7318.                 //        case "Message3":
  7319.                 //            scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3]);
  7320.                 //            scriptBoxEditor.AppendText(" = " + textFile.messageList[commandList[3].ToCharArray()[commandList[3].Length - 2]] + " ");
  7321.  
  7322.                 //            scriptBoxEditor.AppendText(" );\n");
  7323.                 //            break;
  7324.                 //        case "MessageBattle":
  7325.                 //            varString2 = "";
  7326.                 //            if (commandList.Length <= 5 && textFile == null)
  7327.                 //            {
  7328.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( " + commandList[3] + ", MESSAGE_ID " + commandList[4] + " , " + commandList[5] + " );\n");
  7329.                 //            }
  7330.                 //            else
  7331.                 //            {
  7332.                 //                short index = 0;
  7333.                 //                varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7334.                 //                if (varString.Contains("M"))
  7335.                 //                {
  7336.                 //                    index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  7337.                 //                    scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  7338.                 //                }
  7339.                 //                else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  7340.                 //                {
  7341.                 //                    var scriptAnLine = scriptBoxEditor.Lines;
  7342.                 //                    int counterInverse = scriptAnLine.Length - 1;
  7343.                 //                    while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  7344.                 //                        counterInverse--;
  7345.                 //                    if (counterInverse > 0)
  7346.                 //                    {
  7347.                 //                        var text = scriptAnLine[counterInverse].Split(' ');
  7348.                 //                        varString = text[text.Length - 1];
  7349.                 //                        scriptBoxEditor.AppendText(space + "BATTLE_MESSAGE " + commandList[4] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7350.                 //                        varString = commandList[4].ToString();
  7351.                 //                    }
  7352.                 //                }
  7353.                 //                else if (Int16.TryParse(varString, out index))
  7354.                 //                    scriptBoxEditor.AppendText(space + "BATTLE_MESSAGE" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7355.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( " + commandList[3] + ", MESSAGE_ID " + varString + " , " + commandList[5] + " );\n");
  7356.                 //            }
  7357.                 //            break;
  7358.                 //        case "Multi":
  7359.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 7), "MULTI_CHOSEN", "MUL");
  7360.                 //            mulString = new List<string>();
  7361.                 //            scriptBoxEditor.AppendText(space + "MULTI_CHOSEN " + commandList[7] + " = " + commandList[2] + "(X " + commandList[4] + " , " +
  7362.                 //                "Y " + commandList[5] + " , " +
  7363.                 //                "CURSOR " + commandList[6] +
  7364.                 //                ");\n");
  7365.                 //            break;
  7366.  
  7367.                 //        case "Multi3":
  7368.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 7), "MULTI_CHOSEN", "MUL");
  7369.                 //            mulString = new List<string>();
  7370.                 //            scriptBoxEditor.AppendText(space + "MULTI_CHOSEN " + commandList[7] + " = " + commandList[2] + "(X " + commandList[4] + " , " +
  7371.                 //                "Y " + commandList[5] + " , " +
  7372.                 //                "CURSOR " + commandList[6] + " , " +
  7373.                 //                "P_4 " + commandList[8] + " , " +
  7374.                 //                "P_5 " + commandList[9] +
  7375.                 //                ");\n");
  7376.                 //            break;
  7377.                 //        case "MusicalMessage":
  7378.                 //            varString2 = "";
  7379.                 //            if (commandList.Length <= 5 && textFile == null)
  7380.                 //            {
  7381.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , COLOR " + commandList[4] + " );\n");
  7382.                 //            }
  7383.                 //            else
  7384.                 //            {
  7385.                 //                short index = 0;
  7386.                 //                varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7387.                 //                if (varString.Contains("M"))
  7388.                 //                {
  7389.                 //                    index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  7390.                 //                    scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  7391.                 //                }
  7392.                 //                else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  7393.                 //                {
  7394.                 //                    var scriptAnLine = scriptBoxEditor.Lines;
  7395.                 //                    int counterInverse = scriptAnLine.Length - 1;
  7396.                 //                    while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  7397.                 //                        counterInverse--;
  7398.                 //                    if (counterInverse > 0)
  7399.                 //                    {
  7400.                 //                        var text = scriptAnLine[counterInverse].Split(' ');
  7401.                 //                        varString = text[text.Length - 1];
  7402.                 //                        scriptBoxEditor.AppendText(space + "MUSICAL_MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7403.                 //                        varString = commandList[3].ToString();
  7404.                 //                    }
  7405.                 //                }
  7406.                 //                else if (Int16.TryParse(varString, out index))
  7407.                 //                    scriptBoxEditor.AppendText(space + "MUSICAL_MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7408.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , COLOR " + commandList[4] + " );\n");
  7409.                 //            }
  7410.                 //            break;
  7411.                 //        case "MusicalMessage2":
  7412.                 //            varString2 = "";
  7413.                 //            if (commandList.Length <= 5 && textFile == null)
  7414.                 //            {
  7415.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + commandList[3] + " , COLOR " + commandList[4] + " );\n");
  7416.                 //            }
  7417.                 //            else
  7418.                 //            {
  7419.                 //                short index = 0;
  7420.                 //                varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7421.                 //                if (varString.Contains("M"))
  7422.                 //                {
  7423.                 //                    index = Int16.Parse(varString.ToCharArray()[varString.Length - 1].ToString());
  7424.                 //                    scriptBoxEditor.AppendText(space + varString + " = ' " + textFile.messageList[index] + " ';\n");
  7425.                 //                }
  7426.                 //                else if (varString.Length > 2 && Int16.Parse(varString.Substring(2, varString.Length - 2)) > 8000 && textFile != null)
  7427.                 //                {
  7428.                 //                    var scriptAnLine = scriptBoxEditor.Lines;
  7429.                 //                    int counterInverse = scriptAnLine.Length - 1;
  7430.                 //                    while (!scriptAnLine[counterInverse].Contains("VAR") && !scriptAnLine[counterInverse].Contains(" = ") && !scriptAnLine[counterInverse].Contains(varString) || scriptAnLine[counterInverse].Contains("+") && counterInverse > 0)
  7431.                 //                        counterInverse--;
  7432.                 //                    if (counterInverse > 0)
  7433.                 //                    {
  7434.                 //                        var text = scriptAnLine[counterInverse].Split(' ');
  7435.                 //                        varString = text[text.Length - 1];
  7436.                 //                        scriptBoxEditor.AppendText(space + "MUSICAL_MESSAGE " + commandList[3] + " = '" + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7437.                 //                        varString = commandList[3].ToString();
  7438.                 //                    }
  7439.                 //                }
  7440.                 //                else if (Int16.TryParse(varString, out index))
  7441.                 //                    scriptBoxEditor.AppendText(space + "MUSICAL_MESSAGE_" + varString + " = ' " + textFile.messageList[Int16.Parse(varString)] + " ';\n");
  7442.                 //                scriptBoxEditor.AppendText(space + "" + commandList[2] + "( MESSAGE_ID " + varString + " , COLOR " + commandList[4] + " );\n");
  7443.                 //            }
  7444.                 //            break;
  7445.  
  7446.                 //        case "ReleaseOw":
  7447.                 //            scriptBoxEditor.AppendText(space + commandList[2] + "( OW_ID " + commandList[3] +
  7448.                 //                                       ", P_2 " + commandList[4] + ");\n");
  7449.                 //            break;
  7450.  
  7451.                 //        case "RemovePeople":
  7452.                 //            scriptBoxEditor.AppendText(space + commandList[2] + "( OW_ID " + commandList[3] + ");\n");
  7453.                 //            break;
  7454.                 //        case "SetBadge":
  7455.                 //            scriptBoxEditor.AppendText(space + "BADGE " + commandList[3] + " = TRUE;" + "\n");
  7456.                 //            break;
  7457.  
  7458.  
  7459.  
  7460.  
  7461.                 //        case "SetVarRoutine":
  7462.                 //            newVar = checkStored(commandList, 3);
  7463.                 //            newVar2 = checkStored(commandList, 4);
  7464.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7465.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ROUT_VAR " + commandList[3], "NOR");
  7466.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7467.                 //            scriptBoxEditor.AppendText(space + varString2 + " = " + varString + ";\n");
  7468.                 //            if (IsNaturalNumber(varString))
  7469.                 //                addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ROUT_VAR " + varString, "NOR");
  7470.                 //            break;
  7471.                 //        case "SetVarAffinityCheck":
  7472.                 //            scriptBoxEditor.AppendText(space + "VAR NAME " + commandList[3] + " = " + commandList[2] + "();\n");
  7473.                 //            break;
  7474.  
  7475.                 //        case "StartDressPokèmon":
  7476.                 //            newVar = checkStored(commandList, 4);
  7477.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "DRESS_DECISION", "NOR");
  7478.                 //            scriptBoxEditor.AppendText(space + "DRESS_DECISION " + commandList[4] + " = " + commandList[2] + "(" + commandList[3] + " , " + commandList[5] + " );\n");
  7479.                 //            break;
  7480.                 //        case "StoreActiveTrainerId":
  7481.                 //            newVar = checkStored(commandList, 4);
  7482.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_ACTIVE", "BOL");
  7483.                 //            scriptBoxEditor.AppendText(space + "IS_ACTIVE " + commandList[4] + "= " + commandList[2] + "( TRAINER_ID " + commandList[3] + ");\n");
  7484.                 //            break;
  7485.                 //        case "StoreBadge":
  7486.                 //            newVar = checkStored(commandList, 3);
  7487.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BADGE_STATUS", "BOL");
  7488.                 //            varString = getTextFromCondition(commandList[4], "BAD");
  7489.                 //            scriptBoxEditor.AppendText(space + "BADGE_STATUS " + commandList[3] + "= " + commandList[2] + "( BADGE " + varString + ");\n");
  7490.                 //            break;
  7491.                 //        case "StoreBadgeNumber":
  7492.                 //            newVar = checkStored(commandList, 3);
  7493.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BADGE_NUMBER", "NOR");
  7494.                 //            scriptBoxEditor.AppendText(space + "BADGE_NUMBER " + commandList[3] + " = " + commandList[2] + "();\n");
  7495.                 //            break;
  7496.                 //        case "StoreBattleExamLevel":
  7497.                 //            newVar = checkStored(commandList, 3);
  7498.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "EXAM_LEVEL", "NOR");
  7499.                 //            scriptBoxEditor.AppendText(space + "EXAM_LEVEL " + commandList[3] + " = " + commandList[2] + "();\n");
  7500.                 //            break;
  7501.                 //        case "StoreBattleExamModality":
  7502.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7503.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 5), "MODALITY", "NOR");
  7504.                 //            scriptBoxEditor.AppendText(space + "MODALITY " + commandList[5] + " = " + commandList[2] + "( " + commandList[3] + " , " + varString + " );\n");
  7505.                 //            break;
  7506.                 //        case "StoreBattleExamStarNumber":
  7507.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 3), "STAR_NUMBER", "NOR");
  7508.                 //            scriptBoxEditor.AppendText(space + "STAR_NUMBER " + commandList[3] + " = " + commandList[2] + "();\n");
  7509.                 //            break;
  7510.                 //        case "StoreBattleExamType":
  7511.                 //            newVar = checkStored(commandList, 3);
  7512.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "EXAM_TYPE", "NOR");
  7513.                 //            scriptBoxEditor.AppendText(space + "EXAM_TYPE " + commandList[3] + " = " + commandList[2] + "();\n");
  7514.                 //            break;
  7515.                 //        case "StoreBattleResult":
  7516.                 //            newVar = checkStored(commandList, 3);
  7517.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BATTLE_RESULT", "NOR");
  7518.                 //            scriptBoxEditor.AppendText(space + "BATTLE_RESULT " + commandList[3] + " = " + commandList[2] + "();\n");
  7519.                 //            break;
  7520.                 //        case "StoreBirthDay":
  7521.                 //            newVar = checkStored(commandList, 3);
  7522.                 //            newVar2 = checkStored(commandList, 4);
  7523.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BIRTH_MONTH", "NOR");
  7524.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "BIRTH_DAY", "NOR");
  7525.                 //            scriptBoxEditor.AppendText(space + "BIRTH_MONTH " + commandList[3] + " , BIRTH_DAY " + commandList[4] + " = " + commandList[2] + "();\n");
  7526.                 //            break;
  7527.                 //        case "StoreBoxNumber":
  7528.                 //            newVar = checkStored(commandList, 3);
  7529.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "BOX_SPACE", "NOR");
  7530.                 //            scriptBoxEditor.AppendText(space + "BOX_SPACE " + commandList[3] + " = " + commandList[2] + "();\n");
  7531.                 //            break;
  7532.                 //        case "StoreCanTeachDragonMove":
  7533.                 //            newVar = checkStored(commandList, 4);
  7534.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "STATUS", "NOR");
  7535.                 //            scriptBoxEditor.AppendText(space + "STATUS " + commandList[4] + "  = " + commandList[2] + "( " + commandList[3] + " );\n");
  7536.                 //            break;
  7537.                 //        case "StoreChosenPokèmon":
  7538.                 //            newVar = checkStored(commandList, 3);
  7539.                 //            newVar2 = checkStored(commandList, 4);
  7540.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "CHOSEN_STATUS", "BOL");
  7541.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "CHOSEN_POKEMON", "POK");
  7542.                 //            scriptBoxEditor.AppendText(space + "CHOSEN_STATUS " + commandList[3] + ", CHOSEN_POKEMON " + commandList[4] + " = " + commandList[2] + "();\n");
  7543.                 //            break;
  7544.                 //        case "StoreChosenPokèmonDragonMove":
  7545.                 //            newVar = checkStored(commandList, 5);
  7546.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "CHOSEN_POKEMON", "NOR");
  7547.                 //            newVar2 = checkStored(commandList, 4);
  7548.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "CHOSEN_STATUS", "BOL");
  7549.                 //            scriptBoxEditor.AppendText(space + "CHOSEN_STATUS  " + commandList[4] + ", CHOSEN_POKEMON " + commandList[5] + "  = " + commandList[2] + "( " + commandList[3] + " );\n");
  7550.                 //            break;
  7551.                 //        case "StoreChosenPokèmonTrade":
  7552.                 //            newVar = checkStored(commandList, 3);
  7553.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "TRADE_POKEMON", "NOR");
  7554.                 //            scriptBoxEditor.AppendText(space + "TRADE_POKEMON " + commandList[3] + "  = " + commandList[2] + "();\n");
  7555.                 //            break;
  7556.  
  7557.  
  7558.                 //        case "StoreDate":
  7559.                 //            newVar = checkStored(commandList, 3);
  7560.                 //            newVar2 = checkStored(commandList, 4);
  7561.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "MONTH", "NOR");
  7562.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "DAY", "NOR");
  7563.                 //            scriptBoxEditor.AppendText(space + "MONTH " + commandList[3] + " , DAY " + commandList[4] + " = " + commandList[2] + "();\n");
  7564.                 //            break;
  7565.                 //        case "StoreDataUnity":
  7566.                 //            newVar = checkStored(commandList, 4);
  7567.                 //            varString = "";
  7568.                 //            if (commandList[3] == "0")
  7569.                 //                varString = "TRAINER_NUMBER";
  7570.                 //            else if (commandList[3] == "1")
  7571.                 //                varString = "NATION";
  7572.                 //            else if (commandList[3] == "2")
  7573.                 //                varString = "FLOOR";
  7574.                 //            else
  7575.                 //                varString = "DATA";
  7576.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, varString, "NOR");
  7577.                 //            scriptBoxEditor.AppendText(space + varString + " " + commandList[4] + " = " + commandList[2] + "( TYPE " + commandList[3] + " );\n");
  7578.                 //            break;
  7579.                 //        case "StoreDoublePhraseBoxInput":
  7580.                 //            newVar = checkStored(commandList, 4);
  7581.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "INSERT_CHECK", "NOR");
  7582.                 //            newVar2 = checkStored(commandList, 5);
  7583.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "WORD", "NOR");
  7584.                 //            var newVar3 = checkStored(commandList, 6);
  7585.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar3, "WORD_2", "NOR");
  7586.                 //            scriptBoxEditor.AppendText(space + "INSERT_CHECK " + commandList[4] + ", WORD " + commandList[5] + ", WORD_2 " + commandList[6] + " = " + commandList[2] + "( " + commandList[3] + " );\n");
  7587.                 //            break;
  7588.                 //        case "StoreDoublePhraseBoxInput2":
  7589.                 //            newVar = checkStored(commandList, 3);
  7590.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "INSERT_CHECK", "NOR");
  7591.                 //            newVar2 = checkStored(commandList, 4);
  7592.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "WORD", "NOR");
  7593.                 //            newVar3 = checkStored(commandList, 5);
  7594.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar3, "WORD_2", "NOR");
  7595.                 //            var newVar4 = checkStored(commandList, 6);
  7596.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar4, "WORD_3", "NOR");
  7597.                 //            var newVar5 = checkStored(commandList, 7);
  7598.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar5, "WORD_4", "NOR");
  7599.                 //            scriptBoxEditor.AppendText(space + "INSERT_CHECK " + commandList[3] + ", WORD " + commandList[4] + ", WORD_2 " + commandList[5] + ", WORD_3 " + commandList[6] + ", WORD_4 " + commandList[7] + " = " + commandList[2] + "();\n");
  7600.                 //            break;
  7601.                 //  
  7602.                 //        case "StoreFirstTimePokèmonLeague":
  7603.                 //            newVar = checkStored(commandList, 3);
  7604.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "VICTORY_LEAGUE", "NOR");
  7605.                 //            scriptBoxEditor.AppendText(space + "VICTORY_LEAGUE " + commandList[3] + " = " + commandList[2] + "();\n");
  7606.                 //            break;
  7607.                 //        case "StoreFloor":
  7608.                 //            newVar = checkStored(commandList, 3);
  7609.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FLOOR", "NOR");
  7610.                 //            scriptBoxEditor.AppendText(space + "FLOOR " + commandList[3] + " = " + commandList[2] + "();\n");
  7611.                 //            break;
  7612.                 //        case "StoreGender":
  7613.                 //            newVar = checkStored(commandList, 3);
  7614.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "GENDER", "NOR");
  7615.                 //            scriptBoxEditor.AppendText(space + "GENDER " + commandList[3] + "  = " + commandList[2] + "();\n");
  7616.                 //            break;
  7617.  
  7618.                 //        case "StoreHeroFriendCode":
  7619.                 //            newVar = checkStored(commandList, 3);
  7620.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FRIEND_CODE", "NOR");
  7621.                 //            scriptBoxEditor.AppendText(space + "FRIEND_CODE " + commandList[3] + "  = " + commandList[2] + "();\n");
  7622.                 //            break;
  7623.                 //        case "StoreHeroNPCOrientation":
  7624.                 //            newVar = checkStored(commandList, 3);
  7625.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ORIENTATION", "NOR");
  7626.                 //            scriptBoxEditor.AppendText(space + "ORIENTATION " + commandList[3] + " = " + commandList[2] + "();\n");
  7627.                 //            break;
  7628.                 //        case "StoreHeroPosition":
  7629.                 //            newVar = checkStored(commandList, 3);
  7630.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "X", "NOR");
  7631.                 //            newVar2 = checkStored(commandList, 4);
  7632.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "Y", "NOR");
  7633.                 //            scriptBoxEditor.AppendText(space + "X " + commandList[3] + " , Y " + commandList[4] + " = " + commandList[2] + "();\n");
  7634.                 //            break;
  7635.                 //        case "StoreHour":
  7636.                 //            newVar = checkStored(commandList, 3);
  7637.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HOUR", "NOR");
  7638.                 //            scriptBoxEditor.AppendText(space + "HOUR " + commandList[3] + " ,  " + commandList[4] + " = " + commandList[2] + "();\n");
  7639.                 //            break;
  7640.  
  7641.                 //        case "StoreInterestingItemData":
  7642.                 //            newVar = checkStored(commandList, 3);
  7643.                 //            newVar2 = checkStored(commandList, 5);
  7644.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEM", "NOR");
  7645.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "PRIZE", "NOR");
  7646.                 //            scriptBoxEditor.AppendText(space + "ITEM " + commandList[3] + ", PRIZE " + commandList[5] + " = " + commandList[2] + "( " + commandList[4] + " , " + commandList[6] + " );\n");
  7647.                 //            break;
  7648.                 //        case "StoreItem":
  7649.                 //            newVar = checkStored(commandList, 5);
  7650.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEM_NUMBER", "NOR");
  7651.                 //            scriptBoxEditor.AppendText(space + "ITEM_NUMBER " + commandList[5] + " = " + commandList[2] + "( ITEM " + commandList[3] + " , " + "NUMBER " + commandList[4] + " );\n");
  7652.                 //            break;
  7653.                 //        case "StoreItemBag":
  7654.                 //            newVar = checkStored(commandList, 4);
  7655.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEM_BAG", "NOR");
  7656.                 //            scriptBoxEditor.AppendText(space + "ITEM_BAG " + commandList[4] + " = " + commandList[2] + "( ITEM " + commandList[3] + " );\n");
  7657.                 //            break;
  7658.                 //        case "StoreItemBagNumber":
  7659.                 //            newVar = checkStored(commandList, 5);
  7660.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "ITEMBAG_SPACE", "NOR");
  7661.                 //            scriptBoxEditor.AppendText(space + "ITEM_BAG_SPACE " + commandList[5] + " = " + commandList[2] + "( ITEM " + commandList[3] + " , " + "NUMBER " + commandList[4] + " );\n");
  7662.                 //            break;
  7663.                 //        case "StoreNPCFlag":
  7664.                 //            newVar = checkStored(commandList, 4);
  7665.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "NPC_FLAG", "NOR");
  7666.                 //            scriptBoxEditor.AppendText(space + "NPC_FLAG " + commandList[4] + " = " + commandList[2] + "( NPC " + commandList[3] + " );\n");
  7667.                 //            break;
  7668.                 //        case "StoreNPCLevel":
  7669.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7670.                 //            addToVarNameDictionary(varNameDictionary, varLevel, checkStored(commandList, 5), "NPC_LEVEL", "NOR");
  7671.                 //            scriptBoxEditor.AppendText(space + "NPC_LEVEL " + commandList[5] + " = " + commandList[2] + "( NPC " + varString + " , " + commandList[4] + " );\n");
  7672.                 //            break;
  7673.                 //        case "StorePartyCanUseMove":
  7674.                 //            newVar = checkStored(commandList, 3);
  7675.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKE_CAN", "NOR");
  7676.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7677.                 //            if (IsNaturalNumber(varString))
  7678.                 //                varString = getTextFromCondition(commandList[4], "MOV");
  7679.                 //            scriptBoxEditor.AppendText(space + "POKE_CAN " + commandList[3] + " = " + commandList[2] + "( MOVE " + varString + " );\n");
  7680.                 //            break;
  7681.                 //        case "StorePartyHavePokèmon":
  7682.                 //            newVar = checkStored(commandList, 4);
  7683.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKE_NUM", "NOR");
  7684.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7685.                 //            if (IsNaturalNumber(varString))
  7686.                 //                varString = getTextFromCondition(commandList[3], "POK");
  7687.                 //            scriptBoxEditor.AppendText(space + "POKE_NUM " + commandList[4] + " = " + commandList[2] + "( POKE " + varString + " );\n");
  7688.                 //            break;
  7689.                 //        case "StorePartyNumberMinimum":
  7690.                 //            newVar = checkStored(commandList, 3);
  7691.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKEMON_NUMBER", "NOR");
  7692.                 //            scriptBoxEditor.AppendText(space + "POKEMON_NUMBER " + commandList[3] + " = " + commandList[2] + "( LOWER_BOUND " + commandList[4] + " );\n");
  7693.                 //            break;
  7694.                 //        case "StorePartySpecies":
  7695.                 //            newVar = checkStored(commandList, 3);
  7696.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "SPECIE", "POK");
  7697.                 //            scriptBoxEditor.AppendText(space + "SPECIE " + commandList[3] + " = " + commandList[2] + "( POKE " + commandList[4] + " );\n");
  7698.                 //            break;
  7699.                 //        case "StorePhotoName":
  7700.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7701.                 //            scriptBoxEditor.AppendText(space + commandList[2] + "( " + varString + " );\n");
  7702.                 //            break;
  7703.                 //        case "StorePokèdex":
  7704.                 //            newVar = checkStored(commandList, 4);
  7705.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKEDEX_STATUS", "NOR");
  7706.                 //            scriptBoxEditor.AppendText(space + "POKEDEX_STATUS " + commandList[4] + " = " + commandList[2] + "( POKEDEX " + commandList[3] + ");\n");
  7707.                 //            break;
  7708.                 //        case "StorePokèdexCaught":
  7709.                 //            newVar = checkStored(commandList, 5);
  7710.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKE_CAUGHT", "NOR");
  7711.                 //            scriptBoxEditor.AppendText(space + "POKE_CAUGHT " + commandList[5] + " = " + commandList[2] + "( POKEDEX " + commandList[3] + " , " + commandList[4] + " );\n");
  7712.                 //            break;
  7713.                 //        case "StorePokèLottoResults":
  7714.  
  7715.                 //            newVar2 = checkStored(commandList, 4);
  7716.                 //            newVar3 = checkStored(commandList, 3);
  7717.                 //            newVar4 = checkStored(commandList, 5);
  7718.  
  7719.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 6);
  7720.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "LOTTONUMBER_CHECK", "NOR");
  7721.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar4, "LOTTOPOKE_CHECK", "NOR");
  7722.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar3, "LOTTOPOKE_ID", "NOR");
  7723.                 //            scriptBoxEditor.AppendText(space + "LOTTOPOKE_ID " + commandList[3] + ", LOTTONUMBER_CHECK " + commandList[4] + ", LOTTOPOKE_CHECK " + commandList[5] + " = " + commandList[2] + "();\n");
  7724.                 //            break;
  7725.                 //        case "StorePokemonCaughtWF":
  7726.                 //            newVar = checkStored(commandList, 3);
  7727.                 //            newVar2 = checkStored(commandList, 4);
  7728.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "IS_CAUGHT", "BOL");
  7729.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "IS_TODAY", "BOL");
  7730.                 //            scriptBoxEditor.AppendText(space + "IS_CAUGHT " + commandList[3] + ", IS_TODAY " + commandList[4] + " = " + commandList[2] + "( " + commandList[5] + " );\n");
  7731.                 //            break;
  7732.                 //        case "StorePokemonForm":
  7733.                 //            newVar = checkStored(commandList, 4);
  7734.                 //            newVar2 = checkStored(commandList, 3);
  7735.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FORM", "NOR");
  7736.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7737.                 //            scriptBoxEditor.AppendText(space + "FORM " + commandList[4] + " = " + commandList[2] + "( POKE " + varString + ");\n");
  7738.                 //            break;
  7739.                 //        case "StorePokèmonFormNumber":
  7740.                 //            newVar = checkStored(commandList, 3);
  7741.                 //            newVar2 = checkStored(commandList, 4);
  7742.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FORM_NUMBER", "NOR");
  7743.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7744.                 //            scriptBoxEditor.AppendText(space + "FORM_NUMBER " + commandList[3] + " = " + commandList[2] + "( POKE " + varString + ");\n");
  7745.                 //            break;
  7746.                 //        case "StorePokèmonHappiness":
  7747.                 //            newVar = checkStored(commandList, 3);
  7748.                 //            newVar2 = checkStored(commandList, 4);
  7749.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "HAPPY_LEVEL", "NOR");
  7750.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7751.                 //            scriptBoxEditor.AppendText(space + "HAPPY_LEVEL " + commandList[3] + " = " + commandList[2] + "( " + varString + ");\n");
  7752.                 //            break;
  7753.                 //        case "StorePokèmonId":
  7754.  
  7755.                 //            newVar = checkStored(commandList, 3);
  7756.                 //            newVar2 = checkStored(commandList, 4);
  7757.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "CHOSEN_POKEMON", "NOR");
  7758.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "CHOSEN_POKEMON", "NOR");
  7759.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7760.                 //            scriptBoxEditor.AppendText(space + "VAR " + commandList[4] + " = StorePokèmonId( " + varString + " );\n");
  7761.                 //            break;
  7762.                 //        case "StorePokèmonMoveLearned":
  7763.                 //            newVar = checkStored(commandList, 3);
  7764.                 //            newVar2 = checkStored(commandList, 4);
  7765.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "MOVE_NUMBER", "NOR");
  7766.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7767.                 //            scriptBoxEditor.AppendText(space + "MOVE_NUMBER " + commandList[3] + " = " + commandList[2] + "( " + varString + ");\n");
  7768.                 //            break;
  7769.                 //        case "StorePokemonPartyAt":
  7770.                 //            newVar = checkStored(commandList, 3);
  7771.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKEMON", "NOR");
  7772.                 //            scriptBoxEditor.AppendText(space + "POKEMON " + commandList[3] + " = " + commandList[2] + "( POSITION " + commandList[4] + " );\n");
  7773.                 //            break;
  7774.  
  7775.                 //        case "StorePokèmonPartyNumber":
  7776.                 //            newVar = checkStored(commandList, 3);
  7777.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PARTY_NUM", "NOR");
  7778.                 //            scriptBoxEditor.AppendText(space + "PARTY_NUM " + commandList[3] + " = " + commandList[2] + "();\n");
  7779.                 //            break;
  7780.                 //        case "StorePokèmonPartyNumber3":
  7781.                 //            newVar = checkStored(commandList, 3);
  7782.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PARTY_NUM", "NOR");
  7783.                 //            scriptBoxEditor.AppendText(space + "PARTY_NUM " + commandList[3] + " = " + commandList[2] + "();\n");
  7784.                 //            break;
  7785.                 //        case "StorePokèmonPartyNumberBadge":
  7786.                 //            newVar = checkStored(commandList, 4);
  7787.                 //            newVar2 = checkStored(commandList, 3);
  7788.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PARTY_NUM", "NOR");
  7789.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "BADGE", "BAD");
  7790.                 //            scriptBoxEditor.AppendText(space + "BADGE " + commandList[3] + ", PARTY_NUM " + commandList[4] + " = " + commandList[2] + "();\n");
  7791.                 //            break;
  7792.                 //        case "StorePokèmonSex":
  7793.                 //            newVar = checkStored(commandList, 3);
  7794.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "SEX", "NOR");
  7795.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7796.                 //            scriptBoxEditor.AppendText(space + "SEX " + commandList[3] + " = " + commandList[2] + "( POKE " + varString + ", " + commandList[5] + " );\n");
  7797.                 //            break;
  7798.                 //        case "StorePokèmonStatusDragonMove":
  7799.                 //            newVar = checkStored(commandList, 4);
  7800.                 //            newVar2 = checkStored(commandList, 5);
  7801.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "POKE_STATUS", "NOR");
  7802.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7803.                 //            scriptBoxEditor.AppendText(space + "POKE_STATUS " + commandList[5] + " = " + commandList[2] + "( " + commandList[3] + ", POKE " + varString + ");\n");
  7804.                 //            break;
  7805.                 //        case "StorePokèKronApplicationStatus":
  7806.                 //            newVar = checkStored(commandList, 3);
  7807.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PKRONAPP_STATUS", "NOR");
  7808.                 //            scriptBoxEditor.AppendText(space + "PKRONAPP_STATUS " + commandList[4] + " = " + commandList[2] + "( PKRONAPP " + commandList[3] + ");\n");
  7809.                 //            break;
  7810.                 //        case "StorePokèKronStatus":
  7811.                 //            newVar = checkStored(commandList, 3);
  7812.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "PKRON_STATUS", "NOR");
  7813.                 //            scriptBoxEditor.AppendText(space + "PKRON_STATUS " + commandList[3] + " = " + commandList[2] + "();\n");
  7814.                 //            break;
  7815.                 //        case "StoreRandomNumber":
  7816.                 //            newVar = checkStored(commandList, 3);
  7817.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "NUMBER", "NOR");
  7818.                 //            scriptBoxEditor.AppendText(space + "NUMBER " + commandList[3] + " = " + commandList[2] + "( " + commandList[4] + " );\n");
  7819.                 //            break;
  7820.                 //        case "StoreSaveData":
  7821.                 //            newVar = checkStored(commandList, 3);
  7822.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "SAVE_PAR", "NOR");
  7823.                 //            newVar2 = checkStored(commandList, 4);
  7824.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "SAVE_PAR2", "NOR");
  7825.                 //            newVar3 = checkStored(commandList, 5);
  7826.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar3, "AMOUNT", "NOR");
  7827.                 //            scriptBoxEditor.AppendText(space + "SAVE_PAR " + commandList[3] + ", SAVE_PAR2 " + commandList[4] + ", AMOUNT " + commandList[5] + " = " + commandList[2] + "();\n");
  7828.                 //            break;
  7829.                
  7830.                 //        case "StoreSinglePhraseBoxInput":
  7831.                 //            newVar = checkStored(commandList, 4);
  7832.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "INSERT_CHECK", "NOR");
  7833.                 //            newVar2 = checkStored(commandList, 5);
  7834.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar2, "WORD", "NOR");
  7835.                 //            scriptBoxEditor.AppendText(space + "INSERT_CHECK " + commandList[4] + ", WORD " + commandList[5] + " = " + commandList[2] + "( " + commandList[3] + " );\n");
  7836.                 //            break;
  7837.                 //        case "StoreStarter":
  7838.                 //            newVar = checkStored(commandList, 3);
  7839.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "STARTER", "NOR");
  7840.                 //            scriptBoxEditor.AppendText(space + "STARTER  " + commandList[3] + " = " + commandList[2] + "();\n");
  7841.                 //            break;
  7842.                 //        case "StoreTrainerID":
  7843.                 //            newVar = checkStored(commandList, 4);
  7844.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "TRAINER_" + commandList[3], "NOR");
  7845.                 //            scriptBoxEditor.AppendText(space + "VAR " + commandList[4] + "  = TRAINER_" + commandList[3] + ";\n");
  7846.                 //            break;
  7847.                 //        case "StoreWildBattleResult":
  7848.                 //            newVar = checkStored(commandList, 3);
  7849.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "WILDBATTLE_RESULT", "BOL");
  7850.                 //            scriptBoxEditor.AppendText(space + "WILDBATTLE_RESULT " + commandList[3] + " = " + commandList[2] + "();\n");
  7851.                 //            break;
  7852.                 //        case "StoreWildBattlePokèmonStatus":
  7853.                 //            newVar = checkStored(commandList, 3);
  7854.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "POKEMON_STATUS", "NOR");
  7855.                 //            scriptBoxEditor.AppendText(space + "POKEMON_STATUS " + commandList[3] + " = " + commandList[2] + "();\n");
  7856.                 //            break;
  7857.                 //        case "StoreVar(13)":
  7858.                 //            newVar = checkStored(commandList, 3);
  7859.                 //            newVar2 = checkStored(commandList, 4);
  7860.                 //            if (!IsNaturalNumber(commandList[4]))
  7861.                 //                addToVarNameDictionary(varNameDictionary, varLevel, newVar, commandList[3], "NOR");
  7862.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7863.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7864.                 //            if (IsNaturalNumber(varString))
  7865.                 //                varString = getTextFromCondition(commandList[4], "ITE");
  7866.                 //            scriptBoxEditor.AppendText(space + "VAR_13 " + varString2 + " = " + varString + "\n");
  7867.                 //            break;
  7868.                 //        case "StoreVarFlag":
  7869.                 //            newVar = checkStored(commandList, 3);
  7870.                 //            newVar2 = checkStored(commandList, 4);
  7871.                 //            if (!IsNaturalNumber(commandList[4]))
  7872.                 //                addToVarNameDictionary(varNameDictionary, varLevel, newVar, "FLAG_" + commandList[3], "NOR");
  7873.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7874.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7875.                 //            scriptBoxEditor.AppendText(space + "VAR_FLAG " + varString2 + " = " + commandList[3] + "\n");
  7876.                 //            break;
  7877.                 //        case "StoreAddVar":
  7878.                 //            newVar = checkStored(commandList, 3);
  7879.                 //            newVar2 = checkStored(commandList, 4);
  7880.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7881.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7882.                 //            scriptBoxEditor.AppendText(space + "VAR " + varString2 + " = " + varString2 + " + " + varString + ";\n");
  7883.                 //            break;
  7884.                 //        case "StoreSubVar":
  7885.                 //            newVar = checkStored(commandList, 3);
  7886.                 //            newVar2 = checkStored(commandList, 4);
  7887.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7888.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7889.                 //            scriptBoxEditor.AppendText(space + "VAR " + varString2 + " = " + varString2 + " - " + varString + ";\n");
  7890.                 //            break;
  7891.                 //    
  7892.                 //        case "StoreVersion":
  7893.                 //            newVar = checkStored(commandList, 3);
  7894.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "VERSION", "NOR");
  7895.                 //            scriptBoxEditor.AppendText(space + "VERSION " + commandList[3] + "= " + commandList[2] + "();\n");
  7896.                 //            break;
  7897.                 //        case "TakeItem":
  7898.                 //            newVar = checkStored(commandList, 3);
  7899.                 //            newVar2 = checkStored(commandList, 4);
  7900.                 //            newVar3 = checkStored(commandList, 5);
  7901.                 //            varString = getTextFromCondition(getStoredMagic(varNameDictionary, varLevel, commandList, 3), "ITE");
  7902.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar3, "HAS_TAKEN", "BOL");
  7903.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7904.                 //            scriptBoxEditor.AppendText(space + "HAS_TAKEN " + commandList[5] + "= " + commandList[2] + "( ITEM " + varString + " , NUMBER " + varString2 + " );\n");
  7905.                 //            break;
  7906.                 //        case "TradePokèmon":
  7907.                 //            newVar = checkStored(commandList, 3);
  7908.                 //            varString = getStoredMagic(varNameDictionary, varLevel, commandList, 3);
  7909.                 //            scriptBoxEditor.AppendText(space + commandList[2] + "( " + varString + " );\n");
  7910.                 //            break;
  7911.                 //        case "YesNoBox":
  7912.                 //            newVar = checkStored(commandList, 3);
  7913.                 //            addToVarNameDictionary(varNameDictionary, varLevel, newVar, "YESNO_RESULT", "YNO");
  7914.                 //            scriptBoxEditor.AppendText(space + "YESNO_RESULT  " + commandList[3] + " = " + commandList[2] + "();\n");
  7915.                 //            break;
  7916.                 //        case "WildPokèmonBattle":
  7917.                 //            newVar = checkStored(commandList, 3);
  7918.                 //            varString = getTextFromCondition(commandList[3], "POK");
  7919.                 //            varString2 = getStoredMagic(varNameDictionary, varLevel, commandList, 5);
  7920.                 //            if (IsNaturalNumber(varString))
  7921.                 //                varString2 = getTextFromCondition(commandList[5], "ITE");
  7922.                 //            var varString3 = getStoredMagic(varNameDictionary, varLevel, commandList, 4);
  7923.                 //            scriptBoxEditor.AppendText(space + commandList[2] + "( POKE " + varString + " , LEVEL " + varString3 + ", ITEM " + varString2 + " );\n");
  7924.                 //            break;
  7925.                 default:
  7926.                     //for (int i = 3; i < commandList.Length ; i++)
  7927.                     //    if (commandList[i]!="")
  7928.                     //        scriptBoxEditor.AppendText(space + "P_" + (i - 2) + " = " + commandList[i] + ";\n");
  7929.                     scriptBoxEditor.AppendText(space + commandList[2] + "(");
  7930.                     for (int i = 3; i < commandList.Length - 2; i++)
  7931.                         if (commandList[i] != "")
  7932.                         {
  7933.                             newVar2 = checkStored(commandList, i);
  7934.                             varString = getStoredMagic(varNameDictionary, varLevel, commandList, i);
  7935.                             scriptBoxEditor.AppendText(" " + varString + " ,");
  7936.                         }
  7937.                     if (commandList[commandList.Length - 2] != "" && commandList.Length > 4)
  7938.                     {
  7939.                         newVar2 = checkStored(commandList, commandList.Length - 2);
  7940.                         varString = getStoredMagic(varNameDictionary, varLevel, commandList, commandList.Length - 2);
  7941.                         scriptBoxEditor.AppendText(" " + varString);
  7942.                     }
  7943.                     scriptBoxEditor.AppendText(" );\n");
  7944.                     break;
  7945.             }
  7946.  
  7947.         }
  7948.  
  7949.  
  7950.  
  7951.         private string getTextFromVar(RichTextBox scriptBoxEditor, string[] commandList, string varString, string text)
  7952.         {
  7953.             if (varString.Contains("M"))
  7954.             {
  7955.                 var id = varString.Split('_')[1];
  7956.                 text = textFile.textList[Int32.Parse(id)].text;
  7957.             }
  7958.             else if (varString.Contains("VAR"))
  7959.             {
  7960.                 for (int i = scriptBoxEditor.Lines.Length - 1; i > 0 && text == ""; i--)
  7961.                 {
  7962.                     var line3 = scriptBoxEditor.Lines[i];
  7963.                     if (line3.Contains("VAR " + commandList[3]))
  7964.                     {
  7965.                         var id = line3.Split('=')[1];
  7966.                         var fixId = id.ToString().TrimStart(' ');
  7967.                         text = textFile.textList[Int16.Parse(fixId)].text;
  7968.                     }
  7969.                 }
  7970.             }
  7971.             else
  7972.             {
  7973.                 if (mulActive)
  7974.                     text = multiFile.textList[Int16.Parse(varString)].text;
  7975.                 else
  7976.                     text = textFile.textList[Int16.Parse(varString)].text;
  7977.                 mulString.Add(text);
  7978.                 scriptBoxEditor.AppendText(" = " + text + " ");
  7979.             }
  7980.             return text;
  7981.         }
  7982.  
  7983.         private string getVarString(RichTextBox scriptBoxEditor, Texts textFile, string[] commandList, string varString, string text)
  7984.         {
  7985.             if (textFile == null)
  7986.                 return "";
  7987.             try
  7988.             {
  7989.                 var findValue = 0;
  7990.                 if (varString.Contains("M"))
  7991.                 {
  7992.                     var id = varString.Split('_')[1];
  7993.                     text = textFile.textList[Int32.Parse(id)].text;
  7994.                 }
  7995.                 else if (varString.Contains("VAR") || varString.Contains("0x"))
  7996.                 {
  7997.                     var pos = scriptBoxEditor.GetLineFromCharIndex(scriptBoxEditor.GetFirstCharIndexOfCurrentLine());
  7998.                     var id = "";
  7999.                     getVarId(scriptBoxEditor, commandList, ref findValue, pos, ref id);
  8000.                     if (id != "")
  8001.                         scriptBoxEditor.AppendText(" (" + id + ") ");
  8002.                     if (textFile != null)
  8003.                         text = textFile.textList[Int32.Parse(id)].text;
  8004.                 }
  8005.                 else
  8006.                     text = textFile.textList[Int16.Parse(varString)].text;
  8007.             }
  8008.             catch (FormatException f)
  8009.             {
  8010.                 return "";
  8011.             }
  8012.             return text;
  8013.         }
  8014.  
  8015.         private void getVarId(RichTextBox scriptBoxEditor, string[] commandList, ref int findValue, int pos, ref string id)
  8016.         {
  8017.             for (int i = pos - 1; i > 0 && findValue == 0; i--)
  8018.             {
  8019.                 var line3 = scriptBoxEditor.Lines[i];
  8020.                 if (line3.Contains("VAR " + commandList[3]))
  8021.                 {
  8022.                     findValue = 1;
  8023.                     var lineVector = line3.Split(' ');
  8024.                     var lineLength = lineVector.Length;
  8025.                     id = lineVector[lineLength - 1];
  8026.                     if (id == ";")
  8027.                         id = lineVector[lineLength - 1].Substring(0, id.Length - 2);
  8028.                 }
  8029.             }
  8030.         }
  8031.  
  8032.         private void readMessage(RichTextBox scriptBoxEditor, string[] commandList, int start)
  8033.         {
  8034.             if (commandList.Length > start - 1)
  8035.                 for (int i = start; i < commandList.Length; i++)
  8036.                     scriptBoxEditor.AppendText(commandList[i] + " ");
  8037.         }
  8038.  
  8039.         private void readFunction(string[] scriptsLine, int lineCounter, string space, ref int functionLineCounter, ref string line2, List<int> visitedLine)
  8040.         {
  8041.             functionLineCounter++;
  8042.             var stringL = scriptsLine[lineCounter - 1];
  8043.             if (/*(space.Length>40 || scriptBoxEditor.Lines.Length>3000) &&*/ visitedLine.Contains(functionLineCounter) && !stringL.Contains("StoreVarValue"))
  8044.             {
  8045.                 var offset = scriptsLine[lineCounter].Split(' ');
  8046.                 if (offset.Length > 7)
  8047.                     scriptBoxEditor.AppendText("       " + space + "Jump to Offset: " + offset[6].TrimStart('(') + "\n");
  8048.                 else if (offset.Length > 5)
  8049.                     scriptBoxEditor.AppendText("       " + space + "Jump to Offset: " + int.Parse(offset[4].TrimStart('0').TrimStart('x'), System.Globalization.NumberStyles.HexNumber) + "\n");
  8050.                 else
  8051.                     scriptBoxEditor.AppendText("       " + space + "Jump to Offset: " + int.Parse(offset[3].TrimStart('0').TrimStart('x'), System.Globalization.NumberStyles.HexNumber) + "\n");
  8052.                 scriptBoxEditor.AppendText(space + "}\n");
  8053.                 return;
  8054.             }
  8055.             visitedLine.Add(functionLineCounter);
  8056.             readFunctionSimplified(scriptsLine, space, ref functionLineCounter, ref line2, visitedLine);
  8057.             scriptBoxEditor.AppendText(space + "}\n");
  8058.             return;
  8059.         }
  8060.  
  8061.         private void readFunctionSimplified(string[] scriptsLine, string space, ref int functionLineCounter, ref string line2, List<int> visitedLine)
  8062.         {
  8063.             do
  8064.             {
  8065.                 line2 = scriptsLine[functionLineCounter];
  8066.                 if (line2.Length > 1)
  8067.                 {
  8068.                     if (line2.StartsWith("="))
  8069.                         return;
  8070.                     try
  8071.                     {
  8072.                         getCommandSimplifiedBW2(scriptsLine, ref functionLineCounter, space + "   ", visitedLine);
  8073.                     }
  8074.                     catch
  8075.                     {
  8076.                     }
  8077.                 }
  8078.                 functionLineCounter++;
  8079.                 if ((line2.Contains(" End ") || line2.Contains("KillScript") || (line2.Contains("Jump") && scriptsLine[functionLineCounter] == "")))
  8080.                     return;
  8081.  
  8082.             } while (functionLineCounter < scriptsLine.Length);
  8083.  
  8084.         }
  8085.  
  8086.         private string getCondition(string[] scriptsLine, int lineCounter)
  8087.         {
  8088.             var condition = scriptsLine[lineCounter + 1].Split(' ')[3];
  8089.             if (condition == "EQUAL")
  8090.                 condition = "==";
  8091.             if (condition == "BIGGER")
  8092.                 condition = ">";
  8093.             if (condition == "LOWER")
  8094.                 condition = "<";
  8095.             if (condition == "BIGGER/EQUAL")
  8096.                 condition = ">=";
  8097.             if (condition == "LOWER/EQUAL")
  8098.                 condition = "<=";
  8099.             if (condition == "DIFFERENT")
  8100.                 condition = "!=";
  8101.             return condition;
  8102.         }
  8103.  
  8104.         private string getStoredMagic(List<Dictionary<int, string>> varNameDictionary, int varLevel, string[] commandList, int id)
  8105.         {
  8106.             int var = checkStored(commandList, id);
  8107.             var varString = "";
  8108.             if (commandList != null)
  8109.                 varString = commandList[id];
  8110.             else
  8111.             {
  8112.                 var = (Int32.Parse(temp));
  8113.                 varString = "0x" + var.ToString("X");
  8114.             }
  8115.  
  8116.             for (int i = varLevel; i < varNameDictionary.Count; i++)
  8117.             {
  8118.                 var nameDictionary = varNameDictionary[i];
  8119.                 if (nameDictionary.ContainsKey(var))
  8120.                     return getVarStringFromDict(var, ref varString, nameDictionary);
  8121.             }
  8122.             for (int i = varLevel; i >= 0; i--)
  8123.             {
  8124.                 var nameDictionary = varNameDictionary[i];
  8125.                 if (nameDictionary.ContainsKey(var))
  8126.                     return getVarStringFromDict(var, ref varString, nameDictionary);
  8127.             }
  8128.             return varString;
  8129.         }
  8130.  
  8131.         private string getVarStringFromDict(int var, ref string varString, Dictionary<int, string> nameDictionary)
  8132.         {
  8133.             varString = nameDictionary[var];
  8134.             conditionType = varString.Substring(varString.Length - 3, 3);
  8135.             cond = conditionType;
  8136.             varString = varString.Substring(0, varString.Length - 3);
  8137.             return varString;
  8138.         }
  8139.  
  8140.         private string getTextFromCondition(string varString, string condition)
  8141.         {
  8142.             //if (!IsNaturalNumber(varString))
  8143.             //    return varString;
  8144.             if (condition == "YNO")
  8145.             {
  8146.                 if (varString == "0")
  8147.                 {
  8148.                     return "NO";
  8149.                 }
  8150.                 if (varString == "1")
  8151.                 {
  8152.                     return "YES";
  8153.                 }
  8154.             }
  8155.             if (condition == "FLA")
  8156.             {
  8157.                 int flag = Int32.Parse(varString);
  8158.  
  8159.                 switch (flag)
  8160.                 {
  8161.                     case 1:
  8162.                         return "NPC_FIRST_TALK";
  8163.                     case 2753:
  8164.                         return "ITEM(DAY_EVENT)";
  8165.                     case 2754:
  8166.                         return "ROYAL_UNOVA_TOUR(DAY_EVENT)";
  8167.                     case 2756:
  8168.                         return "KOMOR_BATTLE(DAY_EVENT)";
  8169.                     case 2757:
  8170.                         return "BELLE_FIRST_ARALIA_LAB";
  8171.                     case 2758:
  8172.                         return "BELLE_BATTLE(DAY_EVENT)";
  8173.                     default:
  8174.                         return flag.ToString();
  8175.                 }
  8176.  
  8177.             }
  8178.  
  8179.             if (condition == "GEN")
  8180.             {
  8181.                 if (varString == "0")
  8182.                     return "MALE";
  8183.                 if (varString == "1")
  8184.                     return "FEMALE";
  8185.             }
  8186.             if (condition == "DAY")
  8187.             {
  8188.                 if (varString == "0")
  8189.                     return "SUNDAY";
  8190.                 if (varString == "1")
  8191.                     return "MONDAY";
  8192.                 if (varString == "2")
  8193.                     return "TUESDAY";
  8194.                 if (varString == "3")
  8195.                     return "WEDNESDDAY";
  8196.                 if (varString == "4")
  8197.                     return "THURSDAY";
  8198.                 if (varString == "5")
  8199.                     return "FRIDAY";
  8200.                 if (varString == "6")
  8201.                     return "SATURDAY";
  8202.             }
  8203.             if (condition == "GEN")
  8204.             {
  8205.                 if (varString == "0")
  8206.                     return "MALE";
  8207.                 if (varString == "1")
  8208.                     return "FEMALE";
  8209.             }
  8210.             if (condition == "BOL")
  8211.             {
  8212.                 if (varString == "0")
  8213.                     return "TRUE";
  8214.                 if (varString == "1")
  8215.                     return "FALSE";
  8216.             }
  8217.             if (condition == "BAD")
  8218.             {
  8219.                     varString = getText((Int16.Parse(varString) + 11).ToString(), textNarc, 64) + " " + varString;
  8220.             }
  8221.             if (condition == "POK")
  8222.             {
  8223.                     varString = getText(varString, bwTextNarc, 284);
  8224.             }
  8225.             if (condition == "ITE")
  8226.             {
  8227.                     varString = getText(varString, bwTextNarc, 54);
  8228.             }
  8229.             if (condition == "MOV")
  8230.             {
  8231.                     varString = getText(varString, bwTextNarc, 286);
  8232.             }
  8233.  
  8234.             if (condition == "ACC")
  8235.                 varString = getText(varString, textNarc, 338);
  8236.             if (condition == "MUL")
  8237.             {
  8238.                 short result = 0;
  8239.                 Int16.TryParse(varString, out result);
  8240.                 if (result != 0)
  8241.                 {
  8242.                     var id = Int16.Parse(varString);
  8243.                     if (id < mulString.Count && id > 0)
  8244.                         varString = mulString[id];
  8245.                 }
  8246.  
  8247.             }
  8248.             return varString;
  8249.         }
  8250.  
  8251.         private string getText(string varString, PG4Map.Narc textNarc, int index)
  8252.         {
  8253.             var textHandler = new Texts();
  8254.             var reader = new BinaryReader(textNarc.figm.fileData[index]);
  8255.             reader.BaseStream.Position = 0;
  8256.             textHandler.readTextBW(reader, 0, new RichTextBox());
  8257.             var id = Int16.Parse(varString);
  8258.             varString = "' " + textHandler.textList[id].text + " '";
  8259.             return varString;
  8260.         }
  8261.  
  8262.         private int checkStored(string[] commandList, int id)
  8263.         {
  8264.             if (commandList == null || id > commandList.Length)
  8265.                 return 0;
  8266.             var intVar = 0;
  8267.             if (commandList[id].Contains("0x"))
  8268.             {
  8269.                 var trimmedVar = commandList[id].Substring(2, commandList[id].Length - 2);
  8270.                 intVar = Int32.Parse(trimmedVar, System.Globalization.NumberStyles.AllowHexSpecifier);
  8271.             }
  8272.             else
  8273.                 intVar = Int32.Parse(commandList[id]);
  8274.             return intVar;
  8275.         }
  8276.  
  8277.         private void addToVarNameDictionary(List<Dictionary<int, string>> varNameDictionary, int varLevel, int newVar, string name, string conditionType)
  8278.         {
  8279.             if (varNameDictionary[varLevel].ContainsKey(newVar))
  8280.                 varNameDictionary[varLevel].Remove(newVar);
  8281.             varNameDictionary[varLevel].Add(newVar, name + conditionType);
  8282.         }
  8283.  
  8284.         public void SetSimplifierFile(Texts multiFile, List<Dictionary<int, string>> varNameDictionaryList, PG4Map.Narc textNarc, Texts textFile, RichTextBox scriptBoxViewer, RichTextBox scriptBoxEditor, int p)
  8285.         {
  8286.             this.multiFile = multiFile;
  8287.             this.varNameDictionary = varNameDictionaryList;
  8288.             this.textNarc = textNarc;
  8289.             this.textFile = textFile;
  8290.             this.scriptBoxViewer = scriptBoxViewer;
  8291.             this.scriptBoxEditor = scriptBoxEditor;
  8292.             this.varLevel = p;
  8293.         }
  8294.     }
  8295.  
  8296. }
Add Comment
Please, Sign In to add comment