png支持
This commit is contained in:
@@ -38,6 +38,47 @@ void register_square_behaviors() {
|
||||
position[0] += input.get_axis("move_left", "move_right") * move_speed * dt;
|
||||
position[1] += input.get_axis("move_up", "move_down") * move_speed * dt;
|
||||
actor.set_position(position);
|
||||
|
||||
if (input.is_action_just_pressed("switch_scene")) {
|
||||
boundard::Game::getInstance().switch_scene("square_alt");
|
||||
}
|
||||
});
|
||||
|
||||
behaviors.register_init("square_alt_init", [](boundard::Actor& actor) {
|
||||
actor.set_position({0.0F, 0.0F});
|
||||
actor.set_facing({0.0F, 1.0F});
|
||||
if (actor.mesh() != nullptr) {
|
||||
actor.mesh()->set_color({0.9F, 0.3F, 0.2F, 1.0F});
|
||||
}
|
||||
});
|
||||
|
||||
behaviors.register_tick(
|
||||
"square_alt_tick",
|
||||
[](boundard::Actor& actor, float dt, const boundard::render::InputMap& input) {
|
||||
const float t = actor.age();
|
||||
actor.set_facing({
|
||||
std::sin(t * 1.3F),
|
||||
std::cos(t * 1.3F),
|
||||
});
|
||||
|
||||
if (actor.mesh() != nullptr) {
|
||||
actor.mesh()->set_color({
|
||||
0.5F + 0.5F * std::sin(t * 2.0F + 4.189F),
|
||||
0.5F + 0.5F * std::sin(t * 2.0F),
|
||||
0.5F + 0.5F * std::sin(t * 2.0F + 2.094F),
|
||||
1.0F,
|
||||
});
|
||||
}
|
||||
|
||||
auto position = actor.position();
|
||||
const float move_speed = 0.7F;
|
||||
position[0] += input.get_axis("move_left", "move_right") * move_speed * dt;
|
||||
position[1] += input.get_axis("move_up", "move_down") * move_speed * dt;
|
||||
actor.set_position(position);
|
||||
|
||||
if (input.is_action_just_pressed("switch_scene")) {
|
||||
boundard::Game::getInstance().switch_scene("square");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user