Integrate all the progress into master #6
|
@ -1,6 +1,9 @@
|
|||
#pragma once
|
||||
#include "../src/include/menu.hpp"
|
||||
#include "../src/include/font_writer.hpp"
|
||||
#include <PSX/GPU/gpu_types.hpp>
|
||||
|
||||
namespace Shared {
|
||||
extern Menu::BackMenu back_menu;
|
||||
extern Menu::BackMenu back_menu;
|
||||
extern JabyEngine::GPU::POLY_G4 background;
|
||||
}
|
|
@ -75,7 +75,7 @@ namespace ControllerTest {
|
|||
}
|
||||
}
|
||||
|
||||
void ControllerState :: update(const Periphery::AnalogeController& controller, JabyEngine::FontWriter& font_writer) {
|
||||
void ControllerState :: update(const Periphery::AnalogeController* controller, JabyEngine::FontWriter& font_writer) {
|
||||
static const DigitalButton ButtonSprtMap[] = {
|
||||
DigitalButton::Triangle, DigitalButton::Circle, DigitalButton::Cross, DigitalButton::Square,
|
||||
DigitalButton::ST, DigitalButton::SEL, DigitalButton::L1, DigitalButton::L2, DigitalButton::R1, DigitalButton::R2,
|
||||
|
@ -85,25 +85,34 @@ namespace ControllerTest {
|
|||
DigitalButton::Up, DigitalButton::Right, DigitalButton::Down, DigitalButton::Left
|
||||
};
|
||||
|
||||
auto& cur_button_sprts = this->buttons[GPU::update_id()];
|
||||
auto& cur_arrow_poly = this->arrows[GPU::update_id()];
|
||||
auto& cur_button_sprts = this->buttons[GPU::update_id()];
|
||||
auto& cur_arrow_poly = this->arrows[GPU::update_id()];
|
||||
|
||||
for(size_t n = 0; n < sizeof(ButtonSprtMap)/sizeof(ButtonSprtMap[0]); n++) {
|
||||
set_active(cur_button_sprts[n], controller.button.is_down(ButtonSprtMap[n]));
|
||||
}
|
||||
for(size_t n = 0; n < sizeof(ArrowPolyMap)/sizeof(ArrowPolyMap[0]); n++) {
|
||||
set_active(cur_arrow_poly[n], controller.button.is_down(ArrowPolyMap[n]));
|
||||
if(controller) {
|
||||
for(size_t n = 0; n < sizeof(ButtonSprtMap)/sizeof(ButtonSprtMap[0]); n++) {
|
||||
set_active(cur_button_sprts[n], controller->button.is_down(ButtonSprtMap[n]));
|
||||
}
|
||||
for(size_t n = 0; n < sizeof(ArrowPolyMap)/sizeof(ArrowPolyMap[0]); n++) {
|
||||
set_active(cur_arrow_poly[n], controller->button.is_down(ArrowPolyMap[n]));
|
||||
}
|
||||
|
||||
set_active(cur_button_sprts[12], controller->header.state == Periphery::RawController::State::Disconnected);
|
||||
|
||||
// Text stuff down here
|
||||
const auto offset_point = cur_button_sprts[1]->position;
|
||||
const auto left_stick = controller->get_left_stick_pos();
|
||||
const auto right_stick = controller->get_right_stick_pos();
|
||||
|
||||
auto cursor = State::create(offset_point.move(16, 0), 0);
|
||||
font_writer.write(cursor, "Right: %i, %i\nLeft : %i, %i\n", right_stick.x, right_stick.y, left_stick.x, left_stick.y);
|
||||
font_writer.write(cursor, "[%s]", get_type_name(static_cast<Periphery::ControllerType>(controller->get_type())));
|
||||
}
|
||||
|
||||
set_active(cur_button_sprts[12], controller.header.state == Periphery::RawController::State::Disconnected);
|
||||
|
||||
// Text stuff down here
|
||||
const auto left_stick = controller.get_left_stick_pos();
|
||||
const auto right_stick = controller.get_right_stick_pos();
|
||||
|
||||
auto cursor = State::create(Make::PositionI16(98, 0), 0);
|
||||
font_writer.write(cursor, "Right: %i, %i\nLeft : %i, %i\n", right_stick.x, right_stick.y, left_stick.x, left_stick.y);
|
||||
font_writer.write(cursor, "[%s]", get_type_name(static_cast<Periphery::ControllerType>(controller.get_type())));
|
||||
else {
|
||||
auto cursor = State::create(Make::PositionI16(cur_arrow_poly[3]->vertex0.x, cur_button_sprts[0]->position.y), 0);
|
||||
font_writer.write(cursor, "!!This Port is not\nenabled in JabyEngine!!", GPU::Color24::Red());
|
||||
this->tex_page[GPU::update_id()].terminate();
|
||||
}
|
||||
}
|
||||
|
||||
void ControllerState :: render() {
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
#include "../../../include/shared.hpp"
|
||||
#include "../../include/font_writer.hpp"
|
||||
#include "include/controller_state.hpp"
|
||||
#include <PSX/Periphery/periphery.hpp>
|
||||
#include <stdio.h>
|
||||
|
@ -7,11 +6,13 @@
|
|||
namespace ControllerTest {
|
||||
using namespace JabyEngine;
|
||||
|
||||
static auto controller_state = ControllerState::create();
|
||||
static auto controller_state0 = ControllerState::create(Make::PositionI16(0, 0));
|
||||
static auto controller_state1 = ControllerState::create(Make::PositionI16(0, 76));
|
||||
|
||||
static void setup() {
|
||||
Shared::back_menu.reset();
|
||||
controller_state.setup();
|
||||
controller_state0.setup();
|
||||
controller_state1.setup();
|
||||
}
|
||||
|
||||
static bool update_or_exit() {
|
||||
|
@ -20,12 +21,15 @@ namespace ControllerTest {
|
|||
return true;
|
||||
}
|
||||
|
||||
controller_state.update(Periphery::get_primary_controller_as<JabyEngine::Periphery::AnalogeController>(), FontWriter::new_font_writer);
|
||||
controller_state0.update(&Periphery::get_primary_controller_as<JabyEngine::Periphery::AnalogeController>(), FontWriter::new_font_writer);
|
||||
controller_state1.update(Periphery::PortCount > 1 ? &Periphery::get_controller_as<JabyEngine::Periphery::AnalogeController>(1, 0) : nullptr, FontWriter::new_font_writer);
|
||||
return false;
|
||||
}
|
||||
|
||||
static void render() {
|
||||
controller_state.render();
|
||||
GPU::render(Shared::background);
|
||||
controller_state0.render();
|
||||
controller_state1.render();
|
||||
FontWriter::new_font_writer.render();
|
||||
Shared::back_menu.render();
|
||||
}
|
||||
|
|
|
@ -61,7 +61,7 @@ namespace ControllerTest {
|
|||
}
|
||||
|
||||
void setup();
|
||||
void update(const Periphery::AnalogeController& controller, JabyEngine::FontWriter& font_writer);
|
||||
void update(const Periphery::AnalogeController* controller, JabyEngine::FontWriter& font_writer);
|
||||
void render();
|
||||
};
|
||||
}
|
|
@ -46,7 +46,11 @@ static StateChange state_changer;
|
|||
static StateChange old_state_changer;
|
||||
|
||||
namespace Shared {
|
||||
Menu::BackMenu back_menu;
|
||||
Menu::BackMenu back_menu;
|
||||
JabyEngine::GPU::POLY_G4 background = Make::POLY_G4(
|
||||
Make::AreaI16(0, 0, GPU::Display::Width, GPU::Display::Height),
|
||||
{GPU::Color24::Red(0xA0), GPU::Color24::Green(0xA0), GPU::Color24::Blue(0xA0), GPU::Color24::Black()}
|
||||
);
|
||||
}
|
||||
|
||||
static void setup() {
|
||||
|
@ -84,6 +88,7 @@ namespace NormalScene {
|
|||
}
|
||||
|
||||
static void render() {
|
||||
GPU::render(Shared::background);
|
||||
FontWriter::new_font_writer.render();
|
||||
FontWriter::bios_font_writer.render();
|
||||
paco.render();
|
||||
|
|
Loading…
Reference in New Issue