V-Gears 0
Free Final Fantasy VII engine.
FieldModuleInstruction.h
Go to the documentation of this file.
1/*
2 * V-Gears
3 * Copyright (C) 2022 V-Gears Team
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#pragma once
20
23
28
29 public:
30
39 virtual void ProcessInst(
40 Function& func, ValueStack& stack, Engine* engine, CodeGenerator* code_gen
41 ) override;
42
43 private:
44
66 void ProcessBATTLE(CodeGenerator* code_gen);
67
88 void ProcessBTLON(CodeGenerator* code_gen);
89
117 void ProcessMAPJUMP(CodeGenerator* code_gen, Function& func);
118};
Base class for code generators.
Definition: CodeGenerator.h:58
Base class for engines.
Definition: Engine.h:34
A module instruction.
Definition: FieldModuleInstruction.h:27
void ProcessBATTLE(CodeGenerator *code_gen)
Processes a BATTLE opcode.
Definition: FieldModuleInstruction.cpp:105
virtual void ProcessInst(Function &func, ValueStack &stack, Engine *engine, CodeGenerator *code_gen) override
Processes the instruction.
Definition: FieldModuleInstruction.cpp:27
void ProcessMAPJUMP(CodeGenerator *code_gen, Function &func)
Processes a MAPJUMP opcode.
Definition: FieldModuleInstruction.cpp:120
void ProcessBTLON(CodeGenerator *code_gen)
Processes a BTLON opcode.
Definition: FieldModuleInstruction.cpp:113
Instruction performing a kernel function call.
Definition: KernelCallInstruction.h:23
Structure representing a function.
Definition: Function.h:26