// BlockyFroggy
// Copyright © 2017 John Ryland.
// All rights reserved.
#pragma once
#ifndef EDITOR_STATE_H
#define EDITOR_STATE_H
#include "BaseGameState.h"
#include "GameSim.h"
class EditorState : public BaseGameState
{
public:
const char* getName() const override { return "EditorState"; }
void enter(GameGraphics& graphics) override;
void exit(GameGraphics& /*graphics*/) override;
void draw(GameGraphics& graphics) override;
bool update(GameUi::UpdateState& state, float elapsed) override;
bool touchesChanged(int x, int y, TouchState ts) override;
private:
// Mouse/Touch state
bool m_touchMoving;
float m_touchX, m_touchY;
int m_editModel = 0;
//Game::GameObjectList dummyList;
float m_editLayer = 0.0;
float m_editRotation = 10.0;
std::vector<uint32_t> m_palette;
std::vector<uint32_t> m_pixels;
int m_pixW = 0;
int m_pixH = 0;
int m_pixD = 0;
int m_palIdx = 0;
int m_pixIdx = 0;
int m_palIdxMru[10];
};
#endif // EDITOR_STATE_H