Getting to the way it's supposed to be!
This commit is contained in:
@@ -1,6 +1,432 @@
|
||||
// Workspace: Game
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/Coven/metaprogram.jai:30.
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:32.
|
||||
//
|
||||
GAME_NAME :: "Test";
|
||||
GAME_NAME :: "FPS";
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:246.
|
||||
//
|
||||
serialize_entity :: (e: *Entity, path: string) {
|
||||
builder: String_Builder;
|
||||
builder.allocator = temp;
|
||||
|
||||
if e.type == {
|
||||
case Block; serialize_entity(cast(*Block)e, *builder);
|
||||
case Character; serialize_entity(cast(*Character)e, *builder);
|
||||
case Item; serialize_entity(cast(*Item)e, *builder);
|
||||
case Pistol; serialize_entity(cast(*Pistol)e, *builder);
|
||||
|
||||
}
|
||||
|
||||
write_entire_file(tprint("%/%.ent", path, e.id), builder_to_string(*builder));
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:257.
|
||||
//
|
||||
deserialize_entity :: (scene: *Scene, path: string) -> *Entity {
|
||||
content := read_entire_file(path);
|
||||
if content.count == 0 return null;
|
||||
|
||||
lines := split(content, "\n");
|
||||
first_line := split(lines[0], ":");
|
||||
|
||||
if first_line.count != 2 return null;
|
||||
|
||||
e: *Entity;
|
||||
|
||||
type := trim(first_line[1], " \n\r");
|
||||
|
||||
if type == {
|
||||
case "Block"; p, locator := find_and_occupy_empty_slot(*scene.by_type._Block); p._locator = locator; e = p; register_entity(scene, p); init_entity(p); deserialize_entity(scene, lines, cast(*Block)e); update_matrix(*e.transform);
|
||||
case "Character"; p, locator := find_and_occupy_empty_slot(*scene.by_type._Character); p._locator = locator; e = p; register_entity(scene, p); init_entity(p); deserialize_entity(scene, lines, cast(*Character)e); update_matrix(*e.transform);
|
||||
case "Item"; p, locator := find_and_occupy_empty_slot(*scene.by_type._Item); p._locator = locator; e = p; register_entity(scene, p); init_entity(p); deserialize_entity(scene, lines, cast(*Item)e); update_matrix(*e.transform);
|
||||
case "Pistol"; p, locator := find_and_occupy_empty_slot(*scene.by_type._Pistol); p._locator = locator; e = p; register_entity(scene, p); init_entity(p); deserialize_entity(scene, lines, cast(*Pistol)e); update_matrix(*e.transform);
|
||||
|
||||
}
|
||||
|
||||
return e;
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:266.
|
||||
//
|
||||
new_block :: (scene: *Scene = null) -> *Block { _scene := scene;
|
||||
if _scene == null {
|
||||
_scene = game_state.current_scene; }
|
||||
p, locator := find_and_occupy_empty_slot(*_scene.by_type._Block); p._locator = locator; register_entity(_scene, p); p.transform = create_identity_transform(); init_entity(p); return p; }
|
||||
new_character :: (scene: *Scene = null) -> *Character { _scene := scene;
|
||||
if _scene == null {
|
||||
_scene = game_state.current_scene; }
|
||||
p, locator := find_and_occupy_empty_slot(*_scene.by_type._Character); p._locator = locator; register_entity(_scene, p); p.transform = create_identity_transform(); init_entity(p); return p; }
|
||||
new_item :: (scene: *Scene = null) -> *Item { _scene := scene;
|
||||
if _scene == null {
|
||||
_scene = game_state.current_scene; }
|
||||
p, locator := find_and_occupy_empty_slot(*_scene.by_type._Item); p._locator = locator; register_entity(_scene, p); p.transform = create_identity_transform(); init_entity(p); return p; }
|
||||
new_pistol :: (scene: *Scene = null) -> *Pistol { _scene := scene;
|
||||
if _scene == null {
|
||||
_scene = game_state.current_scene; }
|
||||
p, locator := find_and_occupy_empty_slot(*_scene.by_type._Pistol); p._locator = locator; register_entity(_scene, p); p.transform = create_identity_transform(); init_entity(p); return p; }
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
serialize_entity :: (e: *Item, builder: *String_Builder) {
|
||||
print_to_builder(builder, "type: Item\n");
|
||||
print_to_builder(builder, "entity.enabled: %\n", e.entity.enabled);
|
||||
print_to_builder(builder, "entity.flags: %\n", e.entity.flags);
|
||||
print_to_builder(builder, "entity.transform.position.x: %\n", e.entity.transform.position.x);
|
||||
print_to_builder(builder, "entity.transform.position.y: %\n", e.entity.transform.position.y);
|
||||
print_to_builder(builder, "entity.transform.position.z: %\n", e.entity.transform.position.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.x: %\n", e.entity.transform.orientation.x);
|
||||
print_to_builder(builder, "entity.transform.orientation.y: %\n", e.entity.transform.orientation.y);
|
||||
print_to_builder(builder, "entity.transform.orientation.z: %\n", e.entity.transform.orientation.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.w: %\n", e.entity.transform.orientation.w);
|
||||
print_to_builder(builder, "entity.transform.scale.x: %\n", e.entity.transform.scale.x);
|
||||
print_to_builder(builder, "entity.transform.scale.y: %\n", e.entity.transform.scale.y);
|
||||
print_to_builder(builder, "entity.transform.scale.z: %\n", e.entity.transform.scale.z);
|
||||
print_to_builder(builder, "entity.grid_position.x: %\n", e.entity.grid_position.x);
|
||||
print_to_builder(builder, "entity.grid_position.y: %\n", e.entity.grid_position.y);
|
||||
print_to_builder(builder, "entity.grid_position.z: %\n", e.entity.grid_position.z);
|
||||
print_to_builder(builder, "entity.snap_offset.x: %\n", e.entity.snap_offset.x);
|
||||
print_to_builder(builder, "entity.snap_offset.y: %\n", e.entity.snap_offset.y);
|
||||
print_to_builder(builder, "entity.snap_offset.z: %\n", e.entity.snap_offset.z);
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
deserialize_entity :: (scene: *Scene, lines: [] string, e: *Item) {
|
||||
for line: lines {
|
||||
values := split(line, ":");
|
||||
if values.count == 2 {
|
||||
if trim(values[0], " ") == {
|
||||
case "entity.enabled";
|
||||
scan2(values[1], "%", *e.entity.enabled);
|
||||
case "entity.transform.position.x";
|
||||
scan2(values[1], "%", *e.entity.transform.position.x);
|
||||
case "entity.transform.position.y";
|
||||
scan2(values[1], "%", *e.entity.transform.position.y);
|
||||
case "entity.transform.position.z";
|
||||
scan2(values[1], "%", *e.entity.transform.position.z);
|
||||
case "entity.transform.orientation.x";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.x);
|
||||
case "entity.transform.orientation.y";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.y);
|
||||
case "entity.transform.orientation.z";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.z);
|
||||
case "entity.transform.orientation.w";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.w);
|
||||
case "entity.transform.scale.x";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.x);
|
||||
case "entity.transform.scale.y";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.y);
|
||||
case "entity.transform.scale.z";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.z);
|
||||
case "entity.grid_position.x";
|
||||
scan2(values[1], "%", *e.entity.grid_position.x);
|
||||
case "entity.grid_position.y";
|
||||
scan2(values[1], "%", *e.entity.grid_position.y);
|
||||
case "entity.grid_position.z";
|
||||
scan2(values[1], "%", *e.entity.grid_position.z);
|
||||
case "entity.snap_offset.x";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.x);
|
||||
case "entity.snap_offset.y";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.y);
|
||||
case "entity.snap_offset.z";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.z);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
serialize_entity :: (e: *Block, builder: *String_Builder) {
|
||||
print_to_builder(builder, "type: Block\n");
|
||||
print_to_builder(builder, "entity.enabled: %\n", e.entity.enabled);
|
||||
print_to_builder(builder, "entity.flags: %\n", e.entity.flags);
|
||||
print_to_builder(builder, "entity.transform.position.x: %\n", e.entity.transform.position.x);
|
||||
print_to_builder(builder, "entity.transform.position.y: %\n", e.entity.transform.position.y);
|
||||
print_to_builder(builder, "entity.transform.position.z: %\n", e.entity.transform.position.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.x: %\n", e.entity.transform.orientation.x);
|
||||
print_to_builder(builder, "entity.transform.orientation.y: %\n", e.entity.transform.orientation.y);
|
||||
print_to_builder(builder, "entity.transform.orientation.z: %\n", e.entity.transform.orientation.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.w: %\n", e.entity.transform.orientation.w);
|
||||
print_to_builder(builder, "entity.transform.scale.x: %\n", e.entity.transform.scale.x);
|
||||
print_to_builder(builder, "entity.transform.scale.y: %\n", e.entity.transform.scale.y);
|
||||
print_to_builder(builder, "entity.transform.scale.z: %\n", e.entity.transform.scale.z);
|
||||
print_to_builder(builder, "entity.grid_position.x: %\n", e.entity.grid_position.x);
|
||||
print_to_builder(builder, "entity.grid_position.y: %\n", e.entity.grid_position.y);
|
||||
print_to_builder(builder, "entity.grid_position.z: %\n", e.entity.grid_position.z);
|
||||
print_to_builder(builder, "entity.snap_offset.x: %\n", e.entity.snap_offset.x);
|
||||
print_to_builder(builder, "entity.snap_offset.y: %\n", e.entity.snap_offset.y);
|
||||
print_to_builder(builder, "entity.snap_offset.z: %\n", e.entity.snap_offset.z);
|
||||
print_to_builder(builder, "block_type: %\n", e.block_type);
|
||||
print_to_builder(builder, "debug_id: %\n", e.debug_id);
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
deserialize_entity :: (scene: *Scene, lines: [] string, e: *Block) {
|
||||
for line: lines {
|
||||
values := split(line, ":");
|
||||
if values.count == 2 {
|
||||
if trim(values[0], " ") == {
|
||||
case "entity.enabled";
|
||||
scan2(values[1], "%", *e.entity.enabled);
|
||||
case "entity.transform.position.x";
|
||||
scan2(values[1], "%", *e.entity.transform.position.x);
|
||||
case "entity.transform.position.y";
|
||||
scan2(values[1], "%", *e.entity.transform.position.y);
|
||||
case "entity.transform.position.z";
|
||||
scan2(values[1], "%", *e.entity.transform.position.z);
|
||||
case "entity.transform.orientation.x";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.x);
|
||||
case "entity.transform.orientation.y";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.y);
|
||||
case "entity.transform.orientation.z";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.z);
|
||||
case "entity.transform.orientation.w";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.w);
|
||||
case "entity.transform.scale.x";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.x);
|
||||
case "entity.transform.scale.y";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.y);
|
||||
case "entity.transform.scale.z";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.z);
|
||||
case "entity.grid_position.x";
|
||||
scan2(values[1], "%", *e.entity.grid_position.x);
|
||||
case "entity.grid_position.y";
|
||||
scan2(values[1], "%", *e.entity.grid_position.y);
|
||||
case "entity.grid_position.z";
|
||||
scan2(values[1], "%", *e.entity.grid_position.z);
|
||||
case "entity.snap_offset.x";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.x);
|
||||
case "entity.snap_offset.y";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.y);
|
||||
case "entity.snap_offset.z";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.z);
|
||||
case "debug_id";
|
||||
scan2(values[1], "%", *e.debug_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
serialize_entity :: (e: *Pistol, builder: *String_Builder) {
|
||||
print_to_builder(builder, "type: Pistol\n");
|
||||
print_to_builder(builder, "entity.enabled: %\n", e.entity.enabled);
|
||||
print_to_builder(builder, "entity.flags: %\n", e.entity.flags);
|
||||
print_to_builder(builder, "entity.transform.position.x: %\n", e.entity.transform.position.x);
|
||||
print_to_builder(builder, "entity.transform.position.y: %\n", e.entity.transform.position.y);
|
||||
print_to_builder(builder, "entity.transform.position.z: %\n", e.entity.transform.position.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.x: %\n", e.entity.transform.orientation.x);
|
||||
print_to_builder(builder, "entity.transform.orientation.y: %\n", e.entity.transform.orientation.y);
|
||||
print_to_builder(builder, "entity.transform.orientation.z: %\n", e.entity.transform.orientation.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.w: %\n", e.entity.transform.orientation.w);
|
||||
print_to_builder(builder, "entity.transform.scale.x: %\n", e.entity.transform.scale.x);
|
||||
print_to_builder(builder, "entity.transform.scale.y: %\n", e.entity.transform.scale.y);
|
||||
print_to_builder(builder, "entity.transform.scale.z: %\n", e.entity.transform.scale.z);
|
||||
print_to_builder(builder, "entity.grid_position.x: %\n", e.entity.grid_position.x);
|
||||
print_to_builder(builder, "entity.grid_position.y: %\n", e.entity.grid_position.y);
|
||||
print_to_builder(builder, "entity.grid_position.z: %\n", e.entity.grid_position.z);
|
||||
print_to_builder(builder, "entity.snap_offset.x: %\n", e.entity.snap_offset.x);
|
||||
print_to_builder(builder, "entity.snap_offset.y: %\n", e.entity.snap_offset.y);
|
||||
print_to_builder(builder, "entity.snap_offset.z: %\n", e.entity.snap_offset.z);
|
||||
print_to_builder(builder, "shooting: %\n", e.shooting);
|
||||
print_to_builder(builder, "reloading: %\n", e.reloading);
|
||||
print_to_builder(builder, "shoot_time: %\n", e.shoot_time);
|
||||
print_to_builder(builder, "reload_time: %\n", e.reload_time);
|
||||
print_to_builder(builder, "shot_cooldown_time: %\n", e.shot_cooldown_time);
|
||||
print_to_builder(builder, "current_mag_ammo: %\n", e.current_mag_ammo);
|
||||
print_to_builder(builder, "ammo_per_mag: %\n", e.ammo_per_mag);
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
deserialize_entity :: (scene: *Scene, lines: [] string, e: *Pistol) {
|
||||
for line: lines {
|
||||
values := split(line, ":");
|
||||
if values.count == 2 {
|
||||
if trim(values[0], " ") == {
|
||||
case "entity.enabled";
|
||||
scan2(values[1], "%", *e.entity.enabled);
|
||||
case "entity.transform.position.x";
|
||||
scan2(values[1], "%", *e.entity.transform.position.x);
|
||||
case "entity.transform.position.y";
|
||||
scan2(values[1], "%", *e.entity.transform.position.y);
|
||||
case "entity.transform.position.z";
|
||||
scan2(values[1], "%", *e.entity.transform.position.z);
|
||||
case "entity.transform.orientation.x";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.x);
|
||||
case "entity.transform.orientation.y";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.y);
|
||||
case "entity.transform.orientation.z";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.z);
|
||||
case "entity.transform.orientation.w";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.w);
|
||||
case "entity.transform.scale.x";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.x);
|
||||
case "entity.transform.scale.y";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.y);
|
||||
case "entity.transform.scale.z";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.z);
|
||||
case "entity.grid_position.x";
|
||||
scan2(values[1], "%", *e.entity.grid_position.x);
|
||||
case "entity.grid_position.y";
|
||||
scan2(values[1], "%", *e.entity.grid_position.y);
|
||||
case "entity.grid_position.z";
|
||||
scan2(values[1], "%", *e.entity.grid_position.z);
|
||||
case "entity.snap_offset.x";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.x);
|
||||
case "entity.snap_offset.y";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.y);
|
||||
case "entity.snap_offset.z";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.z);
|
||||
case "shooting";
|
||||
scan2(values[1], "%", *e.shooting);
|
||||
case "reloading";
|
||||
scan2(values[1], "%", *e.reloading);
|
||||
case "shoot_time";
|
||||
scan2(values[1], "%", *e.shoot_time);
|
||||
case "reload_time";
|
||||
scan2(values[1], "%", *e.reload_time);
|
||||
case "shot_cooldown_time";
|
||||
scan2(values[1], "%", *e.shot_cooldown_time);
|
||||
case "current_mag_ammo";
|
||||
scan2(values[1], "%", *e.current_mag_ammo);
|
||||
case "ammo_per_mag";
|
||||
scan2(values[1], "%", *e.ammo_per_mag);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
serialize_entity :: (e: *Character, builder: *String_Builder) {
|
||||
print_to_builder(builder, "type: Character\n");
|
||||
print_to_builder(builder, "entity.enabled: %\n", e.entity.enabled);
|
||||
print_to_builder(builder, "entity.flags: %\n", e.entity.flags);
|
||||
print_to_builder(builder, "entity.transform.position.x: %\n", e.entity.transform.position.x);
|
||||
print_to_builder(builder, "entity.transform.position.y: %\n", e.entity.transform.position.y);
|
||||
print_to_builder(builder, "entity.transform.position.z: %\n", e.entity.transform.position.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.x: %\n", e.entity.transform.orientation.x);
|
||||
print_to_builder(builder, "entity.transform.orientation.y: %\n", e.entity.transform.orientation.y);
|
||||
print_to_builder(builder, "entity.transform.orientation.z: %\n", e.entity.transform.orientation.z);
|
||||
print_to_builder(builder, "entity.transform.orientation.w: %\n", e.entity.transform.orientation.w);
|
||||
print_to_builder(builder, "entity.transform.scale.x: %\n", e.entity.transform.scale.x);
|
||||
print_to_builder(builder, "entity.transform.scale.y: %\n", e.entity.transform.scale.y);
|
||||
print_to_builder(builder, "entity.transform.scale.z: %\n", e.entity.transform.scale.z);
|
||||
print_to_builder(builder, "entity.grid_position.x: %\n", e.entity.grid_position.x);
|
||||
print_to_builder(builder, "entity.grid_position.y: %\n", e.entity.grid_position.y);
|
||||
print_to_builder(builder, "entity.grid_position.z: %\n", e.entity.grid_position.z);
|
||||
print_to_builder(builder, "entity.snap_offset.x: %\n", e.entity.snap_offset.x);
|
||||
print_to_builder(builder, "entity.snap_offset.y: %\n", e.entity.snap_offset.y);
|
||||
print_to_builder(builder, "entity.snap_offset.z: %\n", e.entity.snap_offset.z);
|
||||
print_to_builder(builder, "look_direction.x: %\n", e.look_direction.x);
|
||||
print_to_builder(builder, "look_direction.y: %\n", e.look_direction.y);
|
||||
print_to_builder(builder, "look_direction.z: %\n", e.look_direction.z);
|
||||
print_to_builder(builder, "yaw: %\n", e.yaw);
|
||||
print_to_builder(builder, "pitch: %\n", e.pitch);
|
||||
print_to_builder(builder, "last_footstep_audio: %\n", e.last_footstep_audio);
|
||||
print_to_builder(builder, "animation_time: %\n", e.animation_time);
|
||||
print_to_builder(builder, "health: %\n", e.health);
|
||||
print_to_builder(builder, "jump_press_time: %\n", e.jump_press_time);
|
||||
print_to_builder(builder, "last_grounded_time: %\n", e.last_grounded_time);
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:270.
|
||||
//
|
||||
deserialize_entity :: (scene: *Scene, lines: [] string, e: *Character) {
|
||||
for line: lines {
|
||||
values := split(line, ":");
|
||||
if values.count == 2 {
|
||||
if trim(values[0], " ") == {
|
||||
case "entity.enabled";
|
||||
scan2(values[1], "%", *e.entity.enabled);
|
||||
case "entity.transform.position.x";
|
||||
scan2(values[1], "%", *e.entity.transform.position.x);
|
||||
case "entity.transform.position.y";
|
||||
scan2(values[1], "%", *e.entity.transform.position.y);
|
||||
case "entity.transform.position.z";
|
||||
scan2(values[1], "%", *e.entity.transform.position.z);
|
||||
case "entity.transform.orientation.x";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.x);
|
||||
case "entity.transform.orientation.y";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.y);
|
||||
case "entity.transform.orientation.z";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.z);
|
||||
case "entity.transform.orientation.w";
|
||||
scan2(values[1], "%", *e.entity.transform.orientation.w);
|
||||
case "entity.transform.scale.x";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.x);
|
||||
case "entity.transform.scale.y";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.y);
|
||||
case "entity.transform.scale.z";
|
||||
scan2(values[1], "%", *e.entity.transform.scale.z);
|
||||
case "entity.grid_position.x";
|
||||
scan2(values[1], "%", *e.entity.grid_position.x);
|
||||
case "entity.grid_position.y";
|
||||
scan2(values[1], "%", *e.entity.grid_position.y);
|
||||
case "entity.grid_position.z";
|
||||
scan2(values[1], "%", *e.entity.grid_position.z);
|
||||
case "entity.snap_offset.x";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.x);
|
||||
case "entity.snap_offset.y";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.y);
|
||||
case "entity.snap_offset.z";
|
||||
scan2(values[1], "%", *e.entity.snap_offset.z);
|
||||
case "look_direction.x";
|
||||
scan2(values[1], "%", *e.look_direction.x);
|
||||
case "look_direction.y";
|
||||
scan2(values[1], "%", *e.look_direction.y);
|
||||
case "look_direction.z";
|
||||
scan2(values[1], "%", *e.look_direction.z);
|
||||
case "yaw";
|
||||
scan2(values[1], "%", *e.yaw);
|
||||
case "pitch";
|
||||
scan2(values[1], "%", *e.pitch);
|
||||
case "last_footstep_audio";
|
||||
scan2(values[1], "%", *e.last_footstep_audio);
|
||||
case "animation_time";
|
||||
scan2(values[1], "%", *e.animation_time);
|
||||
case "health";
|
||||
scan2(values[1], "%", *e.health);
|
||||
case "jump_press_time";
|
||||
scan2(values[1], "%", *e.jump_press_time);
|
||||
case "last_grounded_time";
|
||||
scan2(values[1], "%", *e.last_grounded_time);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// String added via add_build_string() from c:/Personal/games/FPS/modules/Coven/metaprogram.jai:278.
|
||||
//
|
||||
|
||||
// NUM_ENTITY_TYPES tells the target program how many entity types there are.
|
||||
NUM_ENTITY_TYPES :: 4;
|
||||
|
||||
// entity_types is an array containing all the entity types.
|
||||
entity_types : [4] Type : .[ Block, Character, Item, Pistol ];
|
||||
|
||||
Entity_Storage :: struct {
|
||||
_Block: Bucket_Array(Block, 20, true);
|
||||
_Character: Bucket_Array(Character, 20, true);
|
||||
_Item: Bucket_Array(Item, 20, true);
|
||||
_Pistol: Bucket_Array(Pistol, 20, true);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user