Just making tiny improvements to things.
This commit is contained in:
46
src/dawnplatformergame/prefabs/PlayerPrefab.hpp
Normal file
46
src/dawnplatformergame/prefabs/PlayerPrefab.hpp
Normal file
@ -0,0 +1,46 @@
|
||||
// Copyright (c) 2023 Dominic Masters
|
||||
//
|
||||
// This software is released under the MIT License.
|
||||
// https://opensource.org/licenses/MIT
|
||||
|
||||
#pragma once
|
||||
#include "prefab/SceneItemPrefab.hpp"
|
||||
#include "scene/components/Components.hpp"
|
||||
#include "components/PlayerController.hpp"
|
||||
|
||||
namespace Dawn {
|
||||
class PlayerPrefab : public SceneItemPrefab<PlayerPrefab> {
|
||||
public:
|
||||
static std::vector<Asset*> prefabAssets(AssetManager *man) {
|
||||
std::vector<Asset*> assets;
|
||||
assets.push_back(man->get<TilesetAsset>("tileset_aqua"));
|
||||
assets.push_back(man->get<TextureAsset>("texture_aqua"));
|
||||
return assets;
|
||||
}
|
||||
|
||||
//
|
||||
MeshHost *meshHost;
|
||||
TiledSprite *tiledSprite;
|
||||
Material *material;
|
||||
MeshRenderer *meshRenderer;
|
||||
PlayerController *playerController;
|
||||
|
||||
PlayerPrefab(Scene *s, sceneitemid_t i) : SceneItemPrefab(s, i) {}
|
||||
|
||||
void prefabInit(AssetManager *man) override {
|
||||
auto tileset = man->get<TilesetAsset>("tileset_aqua");
|
||||
auto texture = man->get<TextureAsset>("texture_aqua");
|
||||
|
||||
meshHost = addComponent<MeshHost>();
|
||||
tiledSprite = addComponent<TiledSprite>();
|
||||
material = addComponent<Material>();
|
||||
meshRenderer = addComponent<MeshRenderer>();
|
||||
playerController = addComponent<PlayerController>();
|
||||
|
||||
tiledSprite->setTilesetAndSize(&tileset->tileset);
|
||||
tiledSprite->setTile(896);
|
||||
|
||||
material->textureValues[material->getShader()->getParameterByName("u_Text")] = &texture->texture;
|
||||
}
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user