// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #include "TicTacToeTile.hpp" #include "scene/SceneItem.hpp" #include "game/DawnGame.hpp" using namespace Dawn; TicTacToeTile::TicTacToeTile(SceneItem *item) : SceneItemComponent(item), tileState(TIC_TAC_TOE_EMPTY), hovered(false) { } void TicTacToeTile::onStart() { auto cb = [&]{ auto sprite = this->item->getComponent(); if(this->hovered && tileState == TIC_TAC_TOE_EMPTY) { sprite->setTile(0x03); } else { sprite->setTile(tileState); } }; useEffect(cb, tileState); useEffect(cb, hovered)(); }