small asset ids changes
parent
9e368527a3
commit
3a008427f6
|
@ -20,6 +20,7 @@ add_library(eco2d-foundation STATIC
|
||||||
src/models/prefabs/storage.c
|
src/models/prefabs/storage.c
|
||||||
src/models/prefabs/furnace.c
|
src/models/prefabs/furnace.c
|
||||||
src/models/prefabs/blueprint.c
|
src/models/prefabs/blueprint.c
|
||||||
|
src/models/prefabs/craftbench.c
|
||||||
|
|
||||||
src/pkt/packet.c
|
src/pkt/packet.c
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,7 @@ Texture2D texgen_build_sprite_fallback(asset_id id) {
|
||||||
// NOTE(zaklaus): devices
|
// NOTE(zaklaus): devices
|
||||||
case ASSET_CHEST: return LoadTexEco("chest");
|
case ASSET_CHEST: return LoadTexEco("chest");
|
||||||
case ASSET_FURNACE: return LoadTexEco("furnace-export");
|
case ASSET_FURNACE: return LoadTexEco("furnace-export");
|
||||||
|
case ASSET_CRAFTBENCH: return LoadTexEco("craftbench");
|
||||||
|
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,46 +2,14 @@
|
||||||
|
|
||||||
#define ASSET_INVALID 0xFF
|
#define ASSET_INVALID 0xFF
|
||||||
|
|
||||||
#define _ASSETS\
|
#include "assets_ids.lst"
|
||||||
X(ASSET_EMPTY)\
|
|
||||||
X(ASSET_BLANK)\
|
|
||||||
X(ASSET_BLOCK_FRAME)\
|
|
||||||
X(ASSET_BUILDMODE_HIGHLIGHT)\
|
|
||||||
X(ASSET_PLAYER)\
|
|
||||||
X(ASSET_THING)\
|
|
||||||
X(ASSET_CHEST)\
|
|
||||||
X(ASSET_FURNACE)\
|
|
||||||
X(ASSET_BLUEPRINT_BEGIN)\
|
|
||||||
X(ASSET_BLUEPRINT)\
|
|
||||||
X(ASSET_BLUEPRINT_DEMO_HOUSE)\
|
|
||||||
X(ASSET_BLUEPRINT_END)\
|
|
||||||
X(ASSET_FENCE)\
|
|
||||||
X(ASSET_DEV)\
|
|
||||||
X(ASSET_GROUND)\
|
|
||||||
X(ASSET_DIRT)\
|
|
||||||
X(ASSET_WATER)\
|
|
||||||
X(ASSET_LAVA)\
|
|
||||||
X(ASSET_WALL)\
|
|
||||||
X(ASSET_HILL)\
|
|
||||||
X(ASSET_HILL_SNOW)\
|
|
||||||
X(ASSET_HOLE)\
|
|
||||||
X(ASSET_WOOD)\
|
|
||||||
X(ASSET_TREE)\
|
|
||||||
X(ASSET_COAL)\
|
|
||||||
X(ASSET_IRON_ORE)\
|
|
||||||
X(ASSET_IRON_INGOT)\
|
|
||||||
X(ASSET_TEST_TALL)\
|
|
||||||
X(ASSET_BELT)\
|
|
||||||
X(ASSET_BELT_LEFT)\
|
|
||||||
X(ASSET_BELT_RIGHT)\
|
|
||||||
X(ASSET_BELT_UP)\
|
|
||||||
X(ASSET_BELT_DOWN)\
|
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
#define X(id) id,
|
#define X(idx) idx,
|
||||||
_ASSETS
|
_ASSETS
|
||||||
#undef X
|
#undef X
|
||||||
MAX_ASSETS,
|
|
||||||
|
MAX_ASSETS
|
||||||
} asset_id;
|
} asset_id;
|
||||||
|
|
||||||
extern const char *asset_names[];
|
extern const char *asset_names[];
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
#define _ASSETS\
|
||||||
|
X(ASSET_EMPTY)\
|
||||||
|
X(ASSET_BLANK)\
|
||||||
|
X(ASSET_BLOCK_FRAME)\
|
||||||
|
X(ASSET_BUILDMODE_HIGHLIGHT)\
|
||||||
|
X(ASSET_PLAYER)\
|
||||||
|
X(ASSET_THING)\
|
||||||
|
X(ASSET_CHEST)\
|
||||||
|
X(ASSET_FURNACE)\
|
||||||
|
X(ASSET_CRAFTBENCH)\
|
||||||
|
X(ASSET_BLUEPRINT_BEGIN)\
|
||||||
|
X(ASSET_BLUEPRINT)\
|
||||||
|
X(ASSET_BLUEPRINT_DEMO_HOUSE)\
|
||||||
|
X(ASSET_BLUEPRINT_END)\
|
||||||
|
X(ASSET_FENCE)\
|
||||||
|
X(ASSET_DEV)\
|
||||||
|
X(ASSET_GROUND)\
|
||||||
|
X(ASSET_DIRT)\
|
||||||
|
X(ASSET_WATER)\
|
||||||
|
X(ASSET_LAVA)\
|
||||||
|
X(ASSET_WALL)\
|
||||||
|
X(ASSET_HILL)\
|
||||||
|
X(ASSET_HILL_SNOW)\
|
||||||
|
X(ASSET_HOLE)\
|
||||||
|
X(ASSET_WOOD)\
|
||||||
|
X(ASSET_TREE)\
|
||||||
|
X(ASSET_COAL)\
|
||||||
|
X(ASSET_IRON_ORE)\
|
||||||
|
X(ASSET_IRON_INGOT)\
|
||||||
|
X(ASSET_TEST_TALL)\
|
||||||
|
X(ASSET_BELT)\
|
||||||
|
X(ASSET_BELT_LEFT)\
|
||||||
|
X(ASSET_BELT_RIGHT)\
|
||||||
|
X(ASSET_BELT_UP)\
|
||||||
|
X(ASSET_BELT_DOWN)
|
||||||
|
|
|
@ -18,6 +18,7 @@ static asset assets[] = {
|
||||||
ASSET_TEX(ASSET_COAL),
|
ASSET_TEX(ASSET_COAL),
|
||||||
ASSET_TEX(ASSET_CHEST),
|
ASSET_TEX(ASSET_CHEST),
|
||||||
ASSET_TEX(ASSET_FURNACE),
|
ASSET_TEX(ASSET_FURNACE),
|
||||||
|
ASSET_TEX(ASSET_CRAFTBENCH),
|
||||||
ASSET_TEX(ASSET_BLUEPRINT),
|
ASSET_TEX(ASSET_BLUEPRINT),
|
||||||
ASSET_TEX(ASSET_BLUEPRINT_DEMO_HOUSE),
|
ASSET_TEX(ASSET_BLUEPRINT_DEMO_HOUSE),
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
#include "models/prefabs/storage.h"
|
#include "models/prefabs/storage.h"
|
||||||
#include "models/prefabs/furnace.h"
|
#include "models/prefabs/furnace.h"
|
||||||
#include "models/prefabs/blueprint.h"
|
#include "models/prefabs/blueprint.h"
|
||||||
|
#include "models/prefabs/craftbench.h"
|
||||||
|
|
||||||
static struct {
|
static struct {
|
||||||
asset_id id;
|
asset_id id;
|
||||||
|
@ -10,6 +11,7 @@ static struct {
|
||||||
} entity_spawnlist[] = {
|
} entity_spawnlist[] = {
|
||||||
{ .id = ASSET_CHEST, .proc = storage_spawn },
|
{ .id = ASSET_CHEST, .proc = storage_spawn },
|
||||||
{ .id = ASSET_FURNACE, .proc = furnace_spawn },
|
{ .id = ASSET_FURNACE, .proc = furnace_spawn },
|
||||||
|
{ .id = ASSET_CRAFTBENCH, .proc = craftbench_spawn },
|
||||||
{ .id = ASSET_BLUEPRINT, .proc_udata = blueprint_spawn_udata },
|
{ .id = ASSET_BLUEPRINT, .proc_udata = blueprint_spawn_udata },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -23,5 +23,6 @@ static item_desc items[] = {
|
||||||
ITEM_PROXY(ASSET_BELT_DOWN, ASSET_BELT),
|
ITEM_PROXY(ASSET_BELT_DOWN, ASSET_BELT),
|
||||||
|
|
||||||
ITEM_ENT(ASSET_CHEST, 32, ASSET_CHEST),
|
ITEM_ENT(ASSET_CHEST, 32, ASSET_CHEST),
|
||||||
|
ITEM_ENT(ASSET_CRAFTBENCH, 32, ASSET_CRAFTBENCH),
|
||||||
ITEM_ENT(ASSET_FURNACE, 32, ASSET_FURNACE),
|
ITEM_ENT(ASSET_FURNACE, 32, ASSET_FURNACE),
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
#include "craftbench.h"
|
||||||
|
#include "models/device.h"
|
||||||
|
#include "world/world.h"
|
||||||
|
|
||||||
|
#include "models/entity.h"
|
||||||
|
#include "models/components.h"
|
||||||
|
|
||||||
|
uint64_t craftbench_spawn(void) {
|
||||||
|
ecs_entity_t e = device_spawn(ASSET_CRAFTBENCH);
|
||||||
|
|
||||||
|
ItemContainer *storage = ecs_get_mut(world_ecs(), e, ItemContainer);
|
||||||
|
*storage = (ItemContainer){0};
|
||||||
|
|
||||||
|
Producer *producer = ecs_get_mut(world_ecs(), e, Producer);
|
||||||
|
*producer = (Producer){0};
|
||||||
|
producer->energy_level = 69.0f;
|
||||||
|
|
||||||
|
ecs_set(world_ecs(), e, ItemRouter, {1});
|
||||||
|
return (uint64_t)e;
|
||||||
|
}
|
||||||
|
|
||||||
|
void craftbench_despawn(uint64_t ent_id) {
|
||||||
|
entity_despawn(ent_id);
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "platform/system.h"
|
||||||
|
|
||||||
|
uint64_t craftbench_spawn(void);
|
||||||
|
void craftbench_despawn(uint64_t id);
|
||||||
|
|
|
@ -17,6 +17,7 @@ patterns =
|
||||||
"*.txt",
|
"*.txt",
|
||||||
"*.cmake",
|
"*.cmake",
|
||||||
"*.md",
|
"*.md",
|
||||||
|
"*.lst",
|
||||||
};
|
};
|
||||||
|
|
||||||
blacklist_patterns =
|
blacklist_patterns =
|
||||||
|
|
Loading…
Reference in New Issue