class_name WorldData static func generate_test_world() -> Dictionary: var rooms = {} for x in range(4): for y in range(4): var id = "room_%d_%d" % [x, y] var room = RoomData.new() room.id = id room.room_name = "Room %d,%d" % [x, y] room.description = "A generic room at coordinates %d, %d." % [x, y] # Link exits room.exits = {} if x > 0: room.exits["west"] = "room_%d_%d" % [x-1, y] if x < 3: room.exits["east"] = "room_%d_%d" % [x+1, y] if y > 0: room.exits["north"] = "room_%d_%d" % [x, y-1] if y < 3: room.exits["south"] = "room_%d_%d" % [x, y+1] # Add test item to room 1,1 if x == 1 and y == 1: var sword = ItemData.new() sword.id = "sword" sword.name = "Rusty Sword" sword.description = "A rusty old sword." sword.effect_type = "DAMAGE" sword.effect_value = 10 room.items.append(sword) # Add test enemy to room 2,2 if x == 2 and y == 2: var goblin = load("res://scripts/resources/EnemyData.gd").new() goblin.id = "goblin" goblin.name = "Goblin" goblin.hp = 30 goblin.max_hp = 30 goblin.damage = 5 room.enemies.append(goblin) rooms[id] = room return rooms