Instruction.cs 786 B

123456789101112131415161718192021222324
  1. using NTERA.EmuEra.Game.EraEmu.GameData.Expression;
  2. using NTERA.EmuEra.Game.EraEmu.Sub;
  3. namespace NTERA.EmuEra.Game.EraEmu.GameProc.Function
  4. {
  5. internal abstract class AbstractInstruction
  6. {
  7. protected int flag;
  8. public int Flag => flag;
  9. public ArgumentBuilder ArgBuilder {get; protected set;}
  10. public virtual void SetJumpTo(ref bool useCallForm, InstructionLine func, int currentDepth, ref string FunctionoNotFoundName) { }
  11. public virtual void DoInstruction(ExpressionMediator exm, InstructionLine func, ProcessState state, bool translate = false)
  12. { throw new ExeEE("未実装 or 呼び出しミス"); }
  13. public virtual Argument CreateArgument(InstructionLine line, ExpressionMediator exm)
  14. {
  15. throw new ExeEE("実装されていない");
  16. }
  17. }
  18. }