yaze 0.2.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
sprite_builder.cc
Go to the documentation of this file.
1#include "sprite_builder.h"
2
3#include <sstream>
4#include <string>
5
6namespace yaze {
7namespace zelda3 {
8
9SpriteBuilder SpriteBuilder::Create(const std::string& spriteName) {
10 SpriteBuilder builder;
11
12 return builder;
13}
14
15SpriteBuilder& SpriteBuilder::SetProperty(const std::string& propertyName,
16 const std::string& value) {
17 return *this;
18}
19
20SpriteBuilder& SpriteBuilder::SetProperty(const std::string& propertyName,
21 int value) {
22 return *this;
23}
24
25SpriteBuilder& SpriteBuilder::SetProperty(const std::string& propertyName,
26 bool value) {
27 return *this;
28}
29
31 return *this;
32}
33
35 return *this;
36}
37
39 return *this;
40}
41
42SpriteBuilder& SpriteBuilder::AddFunction(const std::string& asmCode) {
43 return *this;
44}
45
46std::string SpriteBuilder::BuildProperties() const {
47 std::stringstream ss;
48 // Build the properties
49 for (int i = 0; i < 27; ++i) {
50 std::string property = "00";
51 if (!properties[i].empty()) property = properties[i];
52 ss << kSpriteProperties[i] << " = $" << property << std::endl;
53 }
54 return ss.str();
55}
56
57std::string SpriteBuilder::Build() const {
58 std::stringstream ss;
59 ss << BuildProperties();
60 return ss.str();
61}
62
63// ============================================================================
64
65SpriteAction SpriteAction::Create(const std::string& actionName) {
66 SpriteAction action;
67
68 return action;
69}
70
72 SpriteAction action;
73
74 return action;
75}
76
78 const SpriteInstruction& instruction) {
79 return *this;
80}
81
83 return *this;
84}
85
86SpriteAction& SpriteAction::SetNextAction(const std::string& nextActionName) {
87 return *this;
88}
89
90std::string SpriteAction::GetConfiguration() const { return ""; }
91
92// ============================================================================
93
95 int speed) {
96 SpriteInstruction instruction;
97
98 return instruction;
99}
100
102 SpriteInstruction instruction;
103 instruction.SetConfiguration("JSL Sprite_ApplySpeedTowardsPlayer");
104 return instruction;
105}
106
108 SpriteInstruction instruction;
109
110 return instruction;
111}
112
114 SpriteInstruction instruction;
115
116 return instruction;
117}
118
120 SpriteInstruction instruction;
121
122 return instruction;
123}
124
126 SpriteInstruction instruction;
127
128 return instruction;
129}
130
131SpriteInstruction SpriteInstruction::Custom(const std::string& asmCode) {
132 SpriteInstruction instruction;
133
134 return instruction;
135}
136
138 SpriteInstruction instruction;
139
140 return instruction;
141}
142
144 const std::string& functionName) {
145 SpriteInstruction instruction;
146
147 return instruction;
148}
149
150} // namespace zelda3
151} // namespace yaze
SpriteAction & AddInstruction(const SpriteInstruction &instruction)
std::string GetConfiguration() const
static SpriteAction Create()
SpriteAction & AddCustomInstruction(const std::string &asmCode)
SpriteAction & SetNextAction(const std::string &nextActionName)
std::string BuildProperties() const
SpriteBuilder & AddAction(const SpriteAction &action)
std::string Build() const
std::array< std::string, 27 > properties
SpriteBuilder & SetGlobalAction(const SpriteAction &action)
static SpriteBuilder Create(const std::string &spriteName)
SpriteBuilder & SetProperty(const std::string &propertyName, const std::string &value)
SpriteBuilder & AddFunction(const std::string &asmCode)
static SpriteInstruction JumpToFunction(const std::string &functionName)
static SpriteInstruction BehaveAsBarrier()
static SpriteInstruction BounceFromTileCollision()
static SpriteInstruction ApplySpeedTowardsPlayer(int speed)
void SetConfiguration(const std::string &instruction)
static SpriteInstruction SetTimer(int timerId, int value)
static SpriteInstruction PlayAnimation(int startFrame, int endFrame, int speed)
static SpriteInstruction MoveXyz()
static SpriteInstruction CheckDamageFromPlayer()
static SpriteInstruction Custom(const std::string &asmCode)
Zelda 3 specific classes and functions.
constexpr const char * kSpriteProperties[]
Main namespace for the application.
Definition controller.cc:18