mirror of
https://git.kittycat.homes/zoe/codename-routes.git
synced 2024-08-15 03:18:26 +00:00
fucking signals, how do they work
This commit is contained in:
parent
bcd4a1b031
commit
9d9348faca
6 changed files with 10 additions and 16 deletions
|
@ -4,6 +4,3 @@
|
||||||
|
|
||||||
[node name="StateServer" type="Node"]
|
[node name="StateServer" type="Node"]
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
xsize = 14
|
|
||||||
ysize = 14
|
|
||||||
zsize = 14
|
|
||||||
|
|
Binary file not shown.
|
@ -1,7 +1,5 @@
|
||||||
extends Node
|
extends Node
|
||||||
|
onready var server = $StateServer
|
||||||
var server = preload("res://native/StateServer.tscn").instance()
|
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
add_child(server)
|
server.generate_world(1024,1024,512)
|
||||||
server.generate_world()
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
[gd_scene load_steps=4 format=2]
|
[gd_scene load_steps=5 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://world/terrain/terrain.tres" type="TileSet" id=1]
|
[ext_resource path="res://world/terrain/terrain.tres" type="TileSet" id=1]
|
||||||
|
[ext_resource path="res://native/StateServer.tscn" type="PackedScene" id=2]
|
||||||
[ext_resource path="res://world/worldcam.gd" type="Script" id=3]
|
[ext_resource path="res://world/worldcam.gd" type="Script" id=3]
|
||||||
[ext_resource path="res://world/StateApi.gd" type="Script" id=5]
|
[ext_resource path="res://world/StateApi.gd" type="Script" id=5]
|
||||||
|
|
||||||
|
@ -9,6 +10,8 @@
|
||||||
[node name="StateApi" type="Node" parent="."]
|
[node name="StateApi" type="Node" parent="."]
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
[node name="StateServer" parent="StateApi" instance=ExtResource( 2 )]
|
||||||
|
|
||||||
[node name="TileMap" type="TileMap" parent="."]
|
[node name="TileMap" type="TileMap" parent="."]
|
||||||
position = Vector2( -2, 0 )
|
position = Vector2( -2, 0 )
|
||||||
mode = 1
|
mode = 1
|
||||||
|
|
|
@ -39,8 +39,8 @@ impl StateServer {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[export]
|
#[export]
|
||||||
fn generate_world(&self, _owner: &Node) {
|
fn generate_world(&self, _owner: &Node, xsize: usize, ysize: usize, zsize: usize) {
|
||||||
let mut new_world = world::World::new(3, 3, 3);
|
let mut new_world = world::World::new(xsize, ysize, zsize);
|
||||||
new_world.generate();
|
new_world.generate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,6 @@ impl StateServer {
|
||||||
// signals
|
// signals
|
||||||
impl StateServer {
|
impl StateServer {
|
||||||
fn register(builder: &ClassBuilder<StateServer>) {
|
fn register(builder: &ClassBuilder<StateServer>) {
|
||||||
builder.signal("jumpled").done();
|
|
||||||
builder
|
builder
|
||||||
.signal("changed_tile")
|
.signal("changed_tile")
|
||||||
.with_param("position", VariantType::Vector3)
|
.with_param("position", VariantType::Vector3)
|
||||||
|
|
|
@ -11,18 +11,15 @@ pub struct World {
|
||||||
|
|
||||||
impl World {
|
impl World {
|
||||||
pub fn generate(&mut self) {
|
pub fn generate(&mut self) {
|
||||||
let mut tiles = get_vec3(self.xsize, self.ysize, self.zsize);
|
self.tiles = get_vec3(self.xsize, self.ysize, self.zsize);
|
||||||
godot_print!("{:#?}", tiles);
|
|
||||||
for x in 0..self.xsize {
|
for x in 0..self.xsize {
|
||||||
for y in 0..self.ysize {
|
for y in 0..self.ysize {
|
||||||
for z in 0..self.zsize {
|
for z in 0..self.zsize {
|
||||||
let tile = tiles::Tile::new(tiles::Tiletypes::Dirt);
|
let tile = tiles::Tile::new(tiles::Tiletypes::Dirt);
|
||||||
tiles[x][y][z] = tile;
|
self.tiles[x][y][z] = tile;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
self.tiles = tiles;
|
|
||||||
godot_print!("{:?}", self.tiles);
|
|
||||||
}
|
}
|
||||||
pub fn new(xsize: usize, ysize: usize, zsize: usize) -> World {
|
pub fn new(xsize: usize, ysize: usize, zsize: usize) -> World {
|
||||||
World {
|
World {
|
||||||
|
|
Loading…
Reference in a new issue