Add uncomitted changes
|
@ -0,0 +1,58 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<map version="1.0" tiledversion="1.0.3" orientation="orthogonal" renderorder="right-down" width="50" height="50" tilewidth="32" tileheight="32" nextobjectid="1">
|
||||||
|
<tileset firstgid="1" source="../../tilesets/default/default.tsx"/>
|
||||||
|
<layer name="Tile Layer 1" width="50" height="50">
|
||||||
|
<data encoding="csv">
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,
|
||||||
|
1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,
|
||||||
|
1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,1,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,1,1,1,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,1,1,4,1,1,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,1,1,1,1,1,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4
|
||||||
|
</data>
|
||||||
|
</layer>
|
||||||
|
</map>
|
After Width: | Height: | Size: 715 B |
|
@ -0,0 +1,249 @@
|
||||||
|
extends Node
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
|
||||||
|
var command_registry = Dictionary();
|
||||||
|
var command_history = []
|
||||||
|
|
||||||
|
export(bool) var debug = false
|
||||||
|
|
||||||
|
export(NodePath) var level_path = 'res://levels/sample/level.tscn'
|
||||||
|
var level = null
|
||||||
|
|
||||||
|
export(float) var turn_max_length = 60.0 # Seconds
|
||||||
|
var turn_time_left = -1.0
|
||||||
|
|
||||||
|
export(int) var population_start = 10
|
||||||
|
export(int) var jobs_start = 0
|
||||||
|
export(int) var food_start = 20
|
||||||
|
export(int) var resources_start = 0
|
||||||
|
export(int) var effort_start = 20
|
||||||
|
export(int) var goods_start = 0
|
||||||
|
|
||||||
|
var game_resources = {
|
||||||
|
'population': population_start,
|
||||||
|
'jobs': jobs_start,
|
||||||
|
'food': food_start,
|
||||||
|
'resources': resources_start,
|
||||||
|
'effort': effort_start,
|
||||||
|
'goods': goods_start,
|
||||||
|
}
|
||||||
|
var turns = 0
|
||||||
|
|
||||||
|
var build_regex = RegEx.new()
|
||||||
|
var set_resource_regex = RegEx.new()
|
||||||
|
# Game rules ish
|
||||||
|
export(bool) var advance_turn_on_successful_command = true
|
||||||
|
|
||||||
|
var game_object_registry = {
|
||||||
|
# TileMap ID. this is a crap way. but hey. do it fast.
|
||||||
|
2: {
|
||||||
|
"name": 'road',
|
||||||
|
},
|
||||||
|
3: {
|
||||||
|
"name": 'road',
|
||||||
|
},
|
||||||
|
4: {
|
||||||
|
'name': 'road',
|
||||||
|
},
|
||||||
|
5: {
|
||||||
|
'name': 'road',
|
||||||
|
},
|
||||||
|
6: {
|
||||||
|
'name': 'bridge',
|
||||||
|
},
|
||||||
|
7: {
|
||||||
|
'name': 'house'
|
||||||
|
},
|
||||||
|
8: {
|
||||||
|
"name": 'farm',
|
||||||
|
"node_path": 'N/A',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
self.register_command('help', funcref(self, "command_help"))
|
||||||
|
self.build_regex.compile("build (?<object_id>[a-z_]*) (?<x>\\d+),(?<y>\\d+)")
|
||||||
|
self.register_command('build', funcref(self, "command_build"))
|
||||||
|
self.register_command('skip', funcref(self, 'command_skip'))
|
||||||
|
self.set_level(self.level_path)
|
||||||
|
if not self.debug:
|
||||||
|
get_node('ui/left sidebar/toggleWorldButton').hide()
|
||||||
|
if self.debug:
|
||||||
|
self.register_command('set_resource', funcref(self, 'command_set_resource'))
|
||||||
|
self.set_resource_regex.compile('set_resource (?<resource_name>[a-z_]*) (?<value>\\d+)')
|
||||||
|
get_node('ui/right sidebar/resources').update_resources(self.game_resources)
|
||||||
|
|
||||||
|
func set_level(path):
|
||||||
|
self.level = load(self.level_path).instance()
|
||||||
|
self.level.hide()
|
||||||
|
# Display?
|
||||||
|
get_node('world').add_child(self.level)
|
||||||
|
get_node('ui/right sidebar/MapSizeContainer').set_level_size(self.level.get_level_size())
|
||||||
|
# Set objects / simulation parameters.
|
||||||
|
|
||||||
|
# Start time
|
||||||
|
self.turn_time_left = self.turn_max_length
|
||||||
|
get_node('ui/right sidebar/timer').set_time_max(self.turn_max_length)
|
||||||
|
self.update_timer()
|
||||||
|
|
||||||
|
func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
self.turn_time_left -= delta
|
||||||
|
if self.turn_time_left <= 0.0:
|
||||||
|
self.advance_turn()
|
||||||
|
self.update_timer()
|
||||||
|
|
||||||
|
func advance_turn():
|
||||||
|
self.turn_time_left = self.turn_max_length
|
||||||
|
# Find people who can't get to jobs
|
||||||
|
# Find unfilled jobs
|
||||||
|
# Report unconnected buildings
|
||||||
|
# Update stats: consume food, word, etc.
|
||||||
|
self.turns += 1
|
||||||
|
|
||||||
|
func update_timer():
|
||||||
|
get_node('ui/right sidebar/timer').set_time_left(self.turn_time_left)
|
||||||
|
|
||||||
|
# A player has hit enter
|
||||||
|
func _on_prompt_text_entered(new_text):
|
||||||
|
history_append(new_text)
|
||||||
|
if new_text:
|
||||||
|
run_command(new_text)
|
||||||
|
# @TODO Run the command
|
||||||
|
get_node('ui/prompt').clear()
|
||||||
|
|
||||||
|
func history_append(text, is_command_result = false, return_code = 0):
|
||||||
|
var n = get_node('ui/ViewportContainer/history')
|
||||||
|
if not n:
|
||||||
|
return
|
||||||
|
if is_command_result:
|
||||||
|
if return_code != 0:
|
||||||
|
n.push_color(Color(1.0, 0.0, 0.0, 1.0))
|
||||||
|
n.add_text(' > (%d) %s' %[return_code, text])
|
||||||
|
if return_code != 0:
|
||||||
|
n.pop()
|
||||||
|
else:
|
||||||
|
n.add_text("$ " + text)
|
||||||
|
n.newline()
|
||||||
|
|
||||||
|
func history_search():
|
||||||
|
pass
|
||||||
|
|
||||||
|
func run_command(text):
|
||||||
|
var result;
|
||||||
|
var callback = parse_command(text)
|
||||||
|
if not callback[1]:
|
||||||
|
result = [-1, 'Command "%s" not found' % callback[0]]
|
||||||
|
else:
|
||||||
|
result = callback[1].call_func(text)
|
||||||
|
self.history_append(result[1], true, result[0])
|
||||||
|
# Possibly advance the turn depending on the game rule.
|
||||||
|
if self.advance_turn_on_successful_command && result[0] == 0:
|
||||||
|
self.advance_turn()
|
||||||
|
|
||||||
|
func parse_command(text):
|
||||||
|
var a = text.split(' ')
|
||||||
|
if self.command_registry.has(a[0]):
|
||||||
|
return [a[0], self.command_registry[a[0]]]
|
||||||
|
return [a[0], false]
|
||||||
|
|
||||||
|
func register_command(name, callback):
|
||||||
|
self.command_registry[name] = callback;
|
||||||
|
|
||||||
|
func remove_command(name):
|
||||||
|
if self.command_registry.has(name):
|
||||||
|
self.command_registry.erase(name);
|
||||||
|
|
||||||
|
func command_help(text):
|
||||||
|
print("received command: '%s'" % text)
|
||||||
|
return [0, 'no!']
|
||||||
|
|
||||||
|
func command_set_resource(text):
|
||||||
|
var r = self.set_resource_regex.search(text)
|
||||||
|
if r == null:
|
||||||
|
return [-1, 'set_resource command could not match arguments. Format: set_resource <resource_name> <value>']
|
||||||
|
var resource_name = r.get_string(1)
|
||||||
|
if ! self.game_resources.has(resource_name):
|
||||||
|
return [-2, 'Resource "%s" does not exist' %resource_name]
|
||||||
|
var value = int(r.get_string(2))
|
||||||
|
self.set_game_resource(resource_name, value)
|
||||||
|
return [0, 'Set resource "%s" to %d' %[resource_name, value]]
|
||||||
|
|
||||||
|
func set_game_resource(name, value):
|
||||||
|
self.game_resources[name] = value
|
||||||
|
get_node('ui/right sidebar/resources').update_resources(self.game_resources)
|
||||||
|
|
||||||
|
func command_build(text):
|
||||||
|
var r = self.build_regex.search(text)
|
||||||
|
if r == null:
|
||||||
|
return [-1, 'Build command could not match arguments. Format: build <object_id> <x>,<y>']
|
||||||
|
var object_id = _get_obj_id_by_name(r.get_string(1))
|
||||||
|
if object_id == null:
|
||||||
|
return [-3, "Object with id '%s' is not registered" % r.get_string(1)]
|
||||||
|
var p = Vector2(int(r.get_string(2)), int(r.get_string(3)))
|
||||||
|
if not _is_in_level(p):
|
||||||
|
return [-4, "Point %d,%d is not in current level" %[p.x, p.y]]
|
||||||
|
var obj_exists = _obj_exists_in_level(p)
|
||||||
|
if obj_exists:
|
||||||
|
var obj_name = self.game_object_registry[_obj_in_level(p)]['name']
|
||||||
|
return [-5, "Object %s already exists at %d, %d" % [obj_name, p.x, p.y]]
|
||||||
|
# Check if base terrain is valid.
|
||||||
|
var terrain_object_id = self.level.get_node('terrain').get_cellv(p)
|
||||||
|
if terrain_object_id == -1:
|
||||||
|
return [-6, "No terrain underneath point at %d,%d" %[p.x, p.y]]
|
||||||
|
# grass
|
||||||
|
if terrain_object_id == 0 && object_id == 6:
|
||||||
|
return [-7, "Can not build over water at %d,%d" %[p.x, p.y]]
|
||||||
|
if terrain_object_id == 1 && object_id != 6:
|
||||||
|
return [-8, "Can not build over grass at %d,%d" %[p.x, p.y]]
|
||||||
|
# (optional) check resources
|
||||||
|
# Build
|
||||||
|
self.level.get_node('objects').set_cellv(p, object_id)
|
||||||
|
# (optional) spend resources
|
||||||
|
return [0, 'Built %s at %d,%d' % [self.game_object_registry[object_id]['name'], p.x, p.y]]
|
||||||
|
|
||||||
|
func _is_in_level(v):
|
||||||
|
if v.x >= self.level.origin.x and v.x <= self.level.origin.x + self.level.width and \
|
||||||
|
v.y >= self.level.origin.y and v.y <= self.level.origin.y + self.level.height:
|
||||||
|
return true
|
||||||
|
return false
|
||||||
|
|
||||||
|
func _get_obj_id_by_name(n):
|
||||||
|
for i in self.game_object_registry.keys():
|
||||||
|
if self.game_object_registry[i]['name'] == n:
|
||||||
|
return i
|
||||||
|
return null
|
||||||
|
|
||||||
|
func _obj_in_level(v):
|
||||||
|
var c = self.level.get_node('objects').get_cellv(v)
|
||||||
|
if c == -1:
|
||||||
|
return null
|
||||||
|
return c
|
||||||
|
|
||||||
|
func _obj_exists_in_level(v):
|
||||||
|
if _obj_in_level(v) != null:
|
||||||
|
return true
|
||||||
|
return false
|
||||||
|
|
||||||
|
|
||||||
|
func _on_toggleWorldButton_toggled(button_pressed):
|
||||||
|
print(button_pressed)
|
||||||
|
if self.level.is_visible_in_tree():
|
||||||
|
self.level.hide()
|
||||||
|
else:
|
||||||
|
self.level.show()
|
||||||
|
|
||||||
|
func command_skip(t):
|
||||||
|
self.advance_turn()
|
||||||
|
return [0, 'OK']
|
||||||
|
|
||||||
|
func _on_timer_skip_presssed():
|
||||||
|
print('a')
|
||||||
|
self.advance_turn()
|
|
@ -0,0 +1,411 @@
|
||||||
|
[gd_scene load_steps=10 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://game.gd" type="Script" id=1]
|
||||||
|
[ext_resource path="res://ui/prompt.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://ui/help.png" type="Texture" id=3]
|
||||||
|
[ext_resource path="res://ui/mapsize.tscn" type="PackedScene" id=4]
|
||||||
|
[ext_resource path="res://ui/timer.tscn" type="PackedScene" id=5]
|
||||||
|
[ext_resource path="res://ui/current_resources.tscn" type="PackedScene" id=6]
|
||||||
|
[ext_resource path="res://help_popup.gd" type="Script" id=7]
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id=1]
|
||||||
|
|
||||||
|
background_mode = 0
|
||||||
|
background_sky_custom_fov = 0.0
|
||||||
|
background_color = Color( 0, 0, 0, 1 )
|
||||||
|
background_energy = 1.0
|
||||||
|
background_canvas_max_layer = 0
|
||||||
|
ambient_light_color = Color( 0, 0, 0, 1 )
|
||||||
|
ambient_light_energy = 1.0
|
||||||
|
ambient_light_sky_contribution = 1.0
|
||||||
|
fog_enabled = false
|
||||||
|
fog_color = Color( 0.5, 0.6, 0.7, 1 )
|
||||||
|
fog_sun_color = Color( 1, 0.9, 0.7, 1 )
|
||||||
|
fog_sun_amount = 0.0
|
||||||
|
fog_depth_enabled = true
|
||||||
|
fog_depth_begin = 10.0
|
||||||
|
fog_depth_curve = 1.0
|
||||||
|
fog_transmit_enabled = false
|
||||||
|
fog_transmit_curve = 1.0
|
||||||
|
fog_height_enabled = false
|
||||||
|
fog_height_min = 0.0
|
||||||
|
fog_height_max = 100.0
|
||||||
|
fog_height_curve = 1.0
|
||||||
|
tonemap_mode = 0
|
||||||
|
tonemap_exposure = 1.0
|
||||||
|
tonemap_white = 1.0
|
||||||
|
auto_exposure_enabled = false
|
||||||
|
auto_exposure_scale = 0.4
|
||||||
|
auto_exposure_min_luma = 0.05
|
||||||
|
auto_exposure_max_luma = 8.0
|
||||||
|
auto_exposure_speed = 0.5
|
||||||
|
ss_reflections_enabled = false
|
||||||
|
ss_reflections_max_steps = 64
|
||||||
|
ss_reflections_fade_in = 0.15
|
||||||
|
ss_reflections_fade_out = 2.0
|
||||||
|
ss_reflections_depth_tolerance = 0.2
|
||||||
|
ss_reflections_roughness = true
|
||||||
|
ssao_enabled = false
|
||||||
|
ssao_radius = 1.0
|
||||||
|
ssao_intensity = 1.0
|
||||||
|
ssao_radius2 = 0.0
|
||||||
|
ssao_intensity2 = 1.0
|
||||||
|
ssao_bias = 0.01
|
||||||
|
ssao_light_affect = 0.0
|
||||||
|
ssao_color = Color( 0, 0, 0, 1 )
|
||||||
|
ssao_quality = 0
|
||||||
|
ssao_blur = 3
|
||||||
|
ssao_edge_sharpness = 4.0
|
||||||
|
dof_blur_far_enabled = false
|
||||||
|
dof_blur_far_distance = 10.0
|
||||||
|
dof_blur_far_transition = 5.0
|
||||||
|
dof_blur_far_amount = 0.1
|
||||||
|
dof_blur_far_quality = 1
|
||||||
|
dof_blur_near_enabled = false
|
||||||
|
dof_blur_near_distance = 2.0
|
||||||
|
dof_blur_near_transition = 1.0
|
||||||
|
dof_blur_near_amount = 0.1
|
||||||
|
dof_blur_near_quality = 1
|
||||||
|
glow_enabled = false
|
||||||
|
glow_levels/1 = false
|
||||||
|
glow_levels/2 = false
|
||||||
|
glow_levels/3 = true
|
||||||
|
glow_levels/4 = false
|
||||||
|
glow_levels/5 = true
|
||||||
|
glow_levels/6 = false
|
||||||
|
glow_levels/7 = false
|
||||||
|
glow_intensity = 0.8
|
||||||
|
glow_strength = 1.0
|
||||||
|
glow_bloom = 0.0
|
||||||
|
glow_blend_mode = 2
|
||||||
|
glow_hdr_threshold = 1.0
|
||||||
|
glow_hdr_scale = 2.0
|
||||||
|
glow_bicubic_upscale = false
|
||||||
|
adjustment_enabled = false
|
||||||
|
adjustment_brightness = 1.0
|
||||||
|
adjustment_contrast = 1.0
|
||||||
|
adjustment_saturation = 1.0
|
||||||
|
|
||||||
|
[sub_resource type="World" id=2]
|
||||||
|
|
||||||
|
environment = SubResource( 1 )
|
||||||
|
|
||||||
|
[node name="game" type="Node" index="0"]
|
||||||
|
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
debug = true
|
||||||
|
level_path = "res://levels/sample/level.tscn"
|
||||||
|
turn_max_length = 60.0
|
||||||
|
population_start = 10
|
||||||
|
jobs_start = 0
|
||||||
|
food_start = 20
|
||||||
|
resources_start = 0
|
||||||
|
effort_start = 20
|
||||||
|
goods_start = 0
|
||||||
|
advance_turn_on_successful_command = true
|
||||||
|
|
||||||
|
[node name="ui" type="Control" parent="." index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 40.0
|
||||||
|
margin_bottom = 40.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
_sections_unfolded = [ "Anchor", "Grow Direction", "Hint", "Margin", "Material", "Rect", "Visibility" ]
|
||||||
|
|
||||||
|
[node name="left sidebar" type="VBoxContainer" parent="ui" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 600.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 0
|
||||||
|
_sections_unfolded = [ "Rect", "Size Flags" ]
|
||||||
|
|
||||||
|
[node name="toggleWorldButton" type="CheckButton" parent="ui/left sidebar" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 40.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = true
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Show World"
|
||||||
|
flat = false
|
||||||
|
align = 0
|
||||||
|
|
||||||
|
[node name="ViewportContainer" type="ViewportContainer" parent="ui" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 175.0
|
||||||
|
margin_right = 850.0
|
||||||
|
margin_bottom = 550.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch = false
|
||||||
|
stretch_shrink = 1
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="history" type="RichTextLabel" parent="ui/ViewportContainer" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 2.0
|
||||||
|
margin_top = 1.0
|
||||||
|
margin_right = 677.0
|
||||||
|
margin_bottom = 551.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = true
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
bbcode_enabled = false
|
||||||
|
bbcode_text = ""
|
||||||
|
visible_characters = -1
|
||||||
|
percent_visible = 1.0
|
||||||
|
meta_underlined = true
|
||||||
|
tab_size = 4
|
||||||
|
text = ""
|
||||||
|
scroll_active = true
|
||||||
|
scroll_following = false
|
||||||
|
selection_enabled = false
|
||||||
|
override_selected_font_color = false
|
||||||
|
|
||||||
|
[node name="Viewport" type="Viewport" parent="ui/ViewportContainer" index="1"]
|
||||||
|
|
||||||
|
arvr = false
|
||||||
|
size = Vector2( 0, 0 )
|
||||||
|
own_world = true
|
||||||
|
world = SubResource( 2 )
|
||||||
|
transparent_bg = false
|
||||||
|
msaa = 0
|
||||||
|
hdr = true
|
||||||
|
disable_3d = false
|
||||||
|
usage = 2
|
||||||
|
debug_draw = 0
|
||||||
|
render_target_v_flip = false
|
||||||
|
render_target_clear_mode = 0
|
||||||
|
render_target_update_mode = 3
|
||||||
|
audio_listener_enable_2d = false
|
||||||
|
audio_listener_enable_3d = false
|
||||||
|
physics_object_picking = false
|
||||||
|
gui_disable_input = false
|
||||||
|
gui_snap_controls_to_pixels = true
|
||||||
|
shadow_atlas_size = 0
|
||||||
|
shadow_atlas_quad_0 = 2
|
||||||
|
shadow_atlas_quad_1 = 2
|
||||||
|
shadow_atlas_quad_2 = 3
|
||||||
|
shadow_atlas_quad_3 = 4
|
||||||
|
|
||||||
|
[node name="prompt" type="LineEdit" parent="ui" index="2"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 175.0
|
||||||
|
margin_top = 550.0
|
||||||
|
margin_right = 850.0
|
||||||
|
margin_bottom = 600.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 1
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
focus_mode = 2
|
||||||
|
context_menu_enabled = true
|
||||||
|
placeholder_text = "Click here and type to start entering commands"
|
||||||
|
placeholder_alpha = 0.6
|
||||||
|
caret_blink = true
|
||||||
|
caret_blink_speed = 0.65
|
||||||
|
caret_position = 0
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
_sections_unfolded = [ "Caret", "Placeholder", "Rect" ]
|
||||||
|
|
||||||
|
[node name="right sidebar" type="VBoxContainer" parent="ui" index="3"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 850.0
|
||||||
|
margin_right = 1025.0
|
||||||
|
margin_bottom = 600.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 0
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="help" type="Button" parent="ui/right sidebar" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 38.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = false
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Help"
|
||||||
|
icon = ExtResource( 3 )
|
||||||
|
flat = false
|
||||||
|
align = 1
|
||||||
|
_sections_unfolded = [ "Rect", "Textures", "Theme", "Visibility" ]
|
||||||
|
|
||||||
|
[node name="MapSizeContainer" parent="ui/right sidebar" index="1" instance=ExtResource( 4 )]
|
||||||
|
|
||||||
|
margin_top = 42.0
|
||||||
|
margin_bottom = 56.0
|
||||||
|
alignment = 2
|
||||||
|
|
||||||
|
[node name="timer" parent="ui/right sidebar" index="2" instance=ExtResource( 5 )]
|
||||||
|
|
||||||
|
margin_top = 60.0
|
||||||
|
margin_bottom = 260.0
|
||||||
|
rect_min_size = Vector2( 175, 200 )
|
||||||
|
|
||||||
|
[node name="resources" parent="ui/right sidebar" index="3" instance=ExtResource( 6 )]
|
||||||
|
|
||||||
|
margin_top = 264.0
|
||||||
|
margin_bottom = 464.0
|
||||||
|
rect_min_size = Vector2( 175, 200 )
|
||||||
|
|
||||||
|
[node name="help_popup" type="PopupPanel" parent="ui" index="4"]
|
||||||
|
|
||||||
|
editor/display_folded = true
|
||||||
|
visible = false
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 166.0
|
||||||
|
margin_top = 2.0
|
||||||
|
margin_right = 852.0
|
||||||
|
margin_bottom = 539.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
popup_exclusive = true
|
||||||
|
script = ExtResource( 7 )
|
||||||
|
_sections_unfolded = [ "Popup" ]
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="ui/help_popup" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 310.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 350.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "Help"
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
|
||||||
|
[node name="ToolButton" type="ToolButton" parent="ui/help_popup" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 5.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 52.0
|
||||||
|
margin_bottom = 27.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = false
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Close"
|
||||||
|
flat = true
|
||||||
|
align = 1
|
||||||
|
|
||||||
|
[node name="world" type="Node2D" parent="." index="1"]
|
||||||
|
|
||||||
|
z_index = -1
|
||||||
|
_sections_unfolded = [ "Transform", "Z Index" ]
|
||||||
|
|
||||||
|
[connection signal="toggled" from="ui/left sidebar/toggleWorldButton" to="." method="_on_toggleWorldButton_toggled"]
|
||||||
|
|
||||||
|
[connection signal="gui_input" from="ui/prompt" to="ui/prompt" method="_on_prompt_gui_input"]
|
||||||
|
|
||||||
|
[connection signal="text_entered" from="ui/prompt" to="." method="_on_prompt_text_entered"]
|
||||||
|
|
||||||
|
[connection signal="text_entered" from="ui/prompt" to="ui/prompt" method="_on_prompt_text_entered"]
|
||||||
|
|
||||||
|
[connection signal="pressed" from="ui/right sidebar/help" to="ui/help_popup" method="_on_help_pressed"]
|
||||||
|
|
||||||
|
[connection signal="skip_presssed" from="ui/right sidebar/timer" to="." method="_on_timer_skip_presssed"]
|
||||||
|
|
||||||
|
[connection signal="pressed" from="ui/help_popup/ToolButton" to="ui/help_popup" method="_on_ToolButton_pressed"]
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
extends PopupPanel
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
||||||
|
|
||||||
|
|
||||||
|
func _on_help_pressed():
|
||||||
|
self.popup()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_ToolButton_pressed():
|
||||||
|
self.hide()
|
|
@ -0,0 +1,22 @@
|
||||||
|
extends Node2D
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
export(int) var height;
|
||||||
|
export(int) var width;
|
||||||
|
export(Vector2) var origin = Vector2(0, 0)
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
||||||
|
|
||||||
|
func get_level_size():
|
||||||
|
return Vector2(self.width, self.height)
|
|
@ -0,0 +1,37 @@
|
||||||
|
[gd_scene load_steps=4 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://levels/sample/level.gd" type="Script" id=1]
|
||||||
|
[ext_resource path="res://levels/sample/terrain.tscn" type="PackedScene" id=2]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/default.tres" type="TileSet" id=3]
|
||||||
|
|
||||||
|
[node name="level" type="Node2D"]
|
||||||
|
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
height = 19
|
||||||
|
width = 32
|
||||||
|
origin = Vector2( 0, 0 )
|
||||||
|
|
||||||
|
[node name="terrain" parent="." index="0" instance=ExtResource( 2 )]
|
||||||
|
|
||||||
|
[node name="objects" type="TileMap" parent="." index="1"]
|
||||||
|
|
||||||
|
mode = 0
|
||||||
|
tile_set = ExtResource( 3 )
|
||||||
|
cell_size = Vector2( 32, 32 )
|
||||||
|
cell_quadrant_size = 16
|
||||||
|
cell_custom_transform = Transform2D( 1, 0, 0, 1, 0, 0 )
|
||||||
|
cell_half_offset = 2
|
||||||
|
cell_tile_origin = 0
|
||||||
|
cell_y_sort = false
|
||||||
|
cell_clip_uv = false
|
||||||
|
collision_use_kinematic = false
|
||||||
|
collision_friction = 1.0
|
||||||
|
collision_bounce = 0.0
|
||||||
|
collision_layer = 1
|
||||||
|
collision_mask = 1
|
||||||
|
occluder_light_mask = 1
|
||||||
|
format = 1
|
||||||
|
tile_data = PoolIntArray( 196612, 8, 0, 196624, 7, 0 )
|
||||||
|
_sections_unfolded = [ "Cell" ]
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,58 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<map version="1.0" tiledversion="1.0.3" orientation="orthogonal" renderorder="right-down" width="50" height="50" tilewidth="32" tileheight="32" nextobjectid="1">
|
||||||
|
<tileset firstgid="1" source="../../tilesets/default/default.tsx"/>
|
||||||
|
<layer name="Tile Layer 1" width="50" height="50">
|
||||||
|
<data encoding="csv">
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,
|
||||||
|
1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,
|
||||||
|
1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,1,1,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,1,4,4,4,4,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,1,1,1,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,1,1,4,1,1,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,4,4,4,1,1,1,1,1,1,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,4,4,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
|
||||||
|
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4
|
||||||
|
</data>
|
||||||
|
</layer>
|
||||||
|
</map>
|
|
@ -0,0 +1,20 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="vnen.tiled_importer"
|
||||||
|
type="PackedScene"
|
||||||
|
valid=false
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/sample/sample_level.tmx"
|
||||||
|
source_md5="c93c2b42ad236f11d839e7afb7ef89ab"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
custom_properties=false
|
||||||
|
tile_metadata=true
|
||||||
|
uv_clip=true
|
||||||
|
image_flags=7
|
||||||
|
embed_internal_images=true
|
||||||
|
save_tiled_properties=false
|
||||||
|
post_import_script=""
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<tileset name="ld41" tilewidth="32" tileheight="32" tilecount="6" columns="0">
|
||||||
|
<grid orientation="orthogonal" width="1" height="1"/>
|
||||||
|
<tile id="0">
|
||||||
|
<image width="32" height="32" source="png/water.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="1">
|
||||||
|
<image width="32" height="32" source="png/road_tee.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="2">
|
||||||
|
<image width="32" height="32" source="png/road_straight.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="3">
|
||||||
|
<image width="32" height="32" source="png/grass.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="4">
|
||||||
|
<image width="32" height="32" source="png/road_single.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="5">
|
||||||
|
<image width="32" height="32" source="png/road_cross.png"/>
|
||||||
|
</tile>
|
||||||
|
</tileset>
|
|
@ -0,0 +1,20 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="vnen.tiled_tileset_importer"
|
||||||
|
type="TileSet"
|
||||||
|
valid=false
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/sample/sample_level.tsx"
|
||||||
|
source_md5="093f655dca7c76883d0057a4d3963412"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
custom_properties=true
|
||||||
|
tile_metadata=true
|
||||||
|
image_flags=7
|
||||||
|
embed_internal_images=true
|
||||||
|
save_tiled_properties=true
|
||||||
|
apply_offset=false
|
||||||
|
post_import_script=""
|
|
@ -0,0 +1,102 @@
|
||||||
|
[gd_resource type="TileSet" load_steps=10 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/grass.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/water.png" type="Texture" id=2]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/road_cross.png" type="Texture" id=3]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/road_single.png" type="Texture" id=4]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/road_straight.png" type="Texture" id=5]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/road_tee.png" type="Texture" id=6]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/bridge.png" type="Texture" id=7]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/house.png" type="Texture" id=8]
|
||||||
|
[ext_resource path="res://levels/tilesets/default/png/farm.png" type="Texture" id=9]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
|
||||||
|
0/name = "Grass"
|
||||||
|
0/texture = ExtResource( 1 )
|
||||||
|
0/tex_offset = Vector2( 0, 0 )
|
||||||
|
0/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
0/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
0/is_autotile = false
|
||||||
|
0/occluder_offset = Vector2( 0, 0 )
|
||||||
|
0/navigation_offset = Vector2( 0, 0 )
|
||||||
|
0/shapes = [ ]
|
||||||
|
1/name = "Water"
|
||||||
|
1/texture = ExtResource( 2 )
|
||||||
|
1/tex_offset = Vector2( 0, 0 )
|
||||||
|
1/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
1/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
1/is_autotile = false
|
||||||
|
1/occluder_offset = Vector2( 0, 0 )
|
||||||
|
1/navigation_offset = Vector2( 0, 0 )
|
||||||
|
1/shapes = [ ]
|
||||||
|
2/name = "Road (Cross)"
|
||||||
|
2/texture = ExtResource( 3 )
|
||||||
|
2/tex_offset = Vector2( 0, 0 )
|
||||||
|
2/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
2/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
2/is_autotile = false
|
||||||
|
2/occluder_offset = Vector2( 0, 0 )
|
||||||
|
2/navigation_offset = Vector2( 0, 0 )
|
||||||
|
2/shapes = [ {
|
||||||
|
"autotile_coord": Vector2( 0, 0 ),
|
||||||
|
"one_way": false,
|
||||||
|
"shape": null,
|
||||||
|
"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 )
|
||||||
|
} ]
|
||||||
|
3/name = "Road (End)"
|
||||||
|
3/texture = ExtResource( 4 )
|
||||||
|
3/tex_offset = Vector2( 0, 0 )
|
||||||
|
3/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
3/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
3/is_autotile = false
|
||||||
|
3/occluder_offset = Vector2( 0, 0 )
|
||||||
|
3/navigation_offset = Vector2( 0, 0 )
|
||||||
|
3/shapes = [ ]
|
||||||
|
4/name = "Road (Straight)"
|
||||||
|
4/texture = ExtResource( 5 )
|
||||||
|
4/tex_offset = Vector2( 0, 0 )
|
||||||
|
4/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
4/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
4/is_autotile = false
|
||||||
|
4/occluder_offset = Vector2( 0, 0 )
|
||||||
|
4/navigation_offset = Vector2( 0, 0 )
|
||||||
|
4/shapes = [ ]
|
||||||
|
5/name = "Road (Tee)"
|
||||||
|
5/texture = ExtResource( 6 )
|
||||||
|
5/tex_offset = Vector2( 0, 0 )
|
||||||
|
5/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
5/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
5/is_autotile = false
|
||||||
|
5/occluder_offset = Vector2( 0, 0 )
|
||||||
|
5/navigation_offset = Vector2( 0, 0 )
|
||||||
|
5/shapes = [ ]
|
||||||
|
6/name = "Bridge"
|
||||||
|
6/texture = ExtResource( 7 )
|
||||||
|
6/tex_offset = Vector2( 0, 0 )
|
||||||
|
6/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
6/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
6/is_autotile = false
|
||||||
|
6/occluder_offset = Vector2( 0, 0 )
|
||||||
|
6/navigation_offset = Vector2( 0, 0 )
|
||||||
|
6/shapes = [ ]
|
||||||
|
7/name = "House"
|
||||||
|
7/texture = ExtResource( 8 )
|
||||||
|
7/tex_offset = Vector2( 0, 0 )
|
||||||
|
7/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
7/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
7/is_autotile = false
|
||||||
|
7/occluder_offset = Vector2( 0, 0 )
|
||||||
|
7/navigation_offset = Vector2( 0, 0 )
|
||||||
|
7/shapes = [ ]
|
||||||
|
8/name = "Farm"
|
||||||
|
8/texture = ExtResource( 9 )
|
||||||
|
8/tex_offset = Vector2( 0, 0 )
|
||||||
|
8/modulate = Color( 1, 1, 1, 1 )
|
||||||
|
8/region = Rect2( 0, 0, 0, 0 )
|
||||||
|
8/is_autotile = false
|
||||||
|
8/occluder_offset = Vector2( 0, 0 )
|
||||||
|
8/navigation_offset = Vector2( 0, 0 )
|
||||||
|
8/shapes = [ ]
|
||||||
|
_sections_unfolded = [ "0", "1", "2", "3", "4", "5", "6", "7", "8" ]
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<tileset name="ld41" tilewidth="32" tileheight="32" tilecount="6" columns="0">
|
||||||
|
<grid orientation="orthogonal" width="1" height="1"/>
|
||||||
|
<tile id="0">
|
||||||
|
<image width="32" height="32" source="png/water.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="1">
|
||||||
|
<image width="32" height="32" source="png/road_tee.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="2">
|
||||||
|
<image width="32" height="32" source="png/road_straight.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="3">
|
||||||
|
<image width="32" height="32" source="png/grass.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="4">
|
||||||
|
<image width="32" height="32" source="png/road_single.png"/>
|
||||||
|
</tile>
|
||||||
|
<tile id="5">
|
||||||
|
<image width="32" height="32" source="png/road_cross.png"/>
|
||||||
|
</tile>
|
||||||
|
</tileset>
|
|
@ -0,0 +1,20 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="vnen.tiled_tileset_importer"
|
||||||
|
type="TileSet"
|
||||||
|
valid=false
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/default.tsx"
|
||||||
|
source_md5="093f655dca7c76883d0057a4d3963412"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
custom_properties=true
|
||||||
|
tile_metadata=false
|
||||||
|
image_flags=7
|
||||||
|
embed_internal_images=false
|
||||||
|
save_tiled_properties=false
|
||||||
|
apply_offset=false
|
||||||
|
post_import_script=""
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/bridge.png-2db149efb21bb9bbfac413be9641e085.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/bridge.png"
|
||||||
|
source_md5="e8cbf8545804a79b256b9e3a3735460b"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/bridge.png-2db149efb21bb9bbfac413be9641e085.stex" ]
|
||||||
|
dest_md5="a95a2c1428670fb99095bc713ac6f243"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 365 B |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/farm.png-defc6fd14185d12b7de4e2cbc06ae785.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/farm.png"
|
||||||
|
source_md5="a8a0165c22ff60a9e8226a5079ffecd0"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/farm.png-defc6fd14185d12b7de4e2cbc06ae785.stex" ]
|
||||||
|
dest_md5="2f62792167780bc1689e621e951723df"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/grass.png-b7950067027b0d689b097507982efb2a.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/grass.png"
|
||||||
|
source_md5="3d1ff9f41d8a9f35816223b3706d4aae"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/grass.png-b7950067027b0d689b097507982efb2a.stex" ]
|
||||||
|
dest_md5="93bcdde3baabe028c90e91ca85e95f28"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 271 B |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/house.png-90b2798c1dfceadf2b73486f421d1f9c.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/house.png"
|
||||||
|
source_md5="8bac60f2c16f7350223cb826508d06ea"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/house.png-90b2798c1dfceadf2b73486f421d1f9c.stex" ]
|
||||||
|
dest_md5="69b1c2780e71562bc7c1b04aebda2ac8"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/road_cross.png-c9952a90dbaaecffbc9e220ef4dbdc8d.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/road_cross.png"
|
||||||
|
source_md5="30767db6f91eac1ea98e7742b8abaa08"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/road_cross.png-c9952a90dbaaecffbc9e220ef4dbdc8d.stex" ]
|
||||||
|
dest_md5="a89dbe7c59146b4985ce9c6a7f9364ef"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.2 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/road_single.png-cf1cddecd73dd335a077840111cb9343.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/road_single.png"
|
||||||
|
source_md5="17801f7f903b615e6dfd371e21a1f3a8"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/road_single.png-cf1cddecd73dd335a077840111cb9343.stex" ]
|
||||||
|
dest_md5="5e11880b21baef78db928866a5184cfa"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.5 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/road_straight.png-87dff282d0a16c1706f7235cbdb25bb6.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/road_straight.png"
|
||||||
|
source_md5="b21b1e9a9c0cf458df8363de9ca44cc0"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/road_straight.png-87dff282d0a16c1706f7235cbdb25bb6.stex" ]
|
||||||
|
dest_md5="9a59eaa499d6f84258b5fc36e37111df"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/road_tee.png-1e119bbfbb4a1c0ab0627bf2e30a96d2.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/road_tee.png"
|
||||||
|
source_md5="080f804e7072a19355aa4b5ee53654e7"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/road_tee.png-1e119bbfbb4a1c0ab0627bf2e30a96d2.stex" ]
|
||||||
|
dest_md5="ee99abdaa173ac39ed31a360b170d4ac"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
After Width: | Height: | Size: 1.2 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/water.png-cfef9686b4b28753118fd0b3683f052e.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://levels/tilesets/default/png/water.png"
|
||||||
|
source_md5="96a9ed8fd6d25eaf7ba8656bf1072fd8"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/water.png-cfef9686b4b28753118fd0b3683f052e.stex" ]
|
||||||
|
dest_md5="4100211fef875f35a450c8e296a15f03"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -0,0 +1,5 @@
|
||||||
|
[gd_scene format=2]
|
||||||
|
|
||||||
|
[node name="Node" type="Node"]
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ config_version=3
|
||||||
|
|
||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="Godot3 Project Template"
|
config/name="LD41 : Sim S****y"
|
||||||
run/main_scene="res://tests/test-2d.tscn"
|
run/main_scene="res://tests/test-2d.tscn"
|
||||||
boot_splash/fullsize=false
|
boot_splash/fullsize=false
|
||||||
config/icon="res://icon.png"
|
config/icon="res://icon.png"
|
||||||
|
@ -21,7 +21,7 @@ window/stretch/shrink="1"
|
||||||
|
|
||||||
[editor_plugins]
|
[editor_plugins]
|
||||||
|
|
||||||
enabled=PoolStringArray( "gut" )
|
enabled=PoolStringArray( "tiled_importer" )
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ gradient = SubResource( 1 )
|
||||||
width = 1024
|
width = 1024
|
||||||
_sections_unfolded = [ "Resource" ]
|
_sections_unfolded = [ "Resource" ]
|
||||||
|
|
||||||
[node name="test-2d" type="Node" index="0"]
|
[node name="test-2d" type="Node"]
|
||||||
|
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
|
|
||||||
|
|
After Width: | Height: | Size: 2.6 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/clock.png-09b4a660a58c86478b8ce31163fe5a4d.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://ui/clock.png"
|
||||||
|
source_md5="c51f169ca04f3f1454f4a36aca7b902a"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/clock.png-09b4a660a58c86478b8ce31163fe5a4d.stex" ]
|
||||||
|
dest_md5="45be711dfb788be0dcd6c54e33bb9fda"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -0,0 +1,33 @@
|
||||||
|
extends Panel
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
var resources = [
|
||||||
|
'population',
|
||||||
|
'jobs',
|
||||||
|
'food',
|
||||||
|
'resources',
|
||||||
|
'effort',
|
||||||
|
'goods'
|
||||||
|
]
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
func update_resources(r):
|
||||||
|
print(self.resources)
|
||||||
|
for i in self.resources:
|
||||||
|
if not i:
|
||||||
|
continue
|
||||||
|
var v = r[i]
|
||||||
|
get_node('HBoxContainer/%s/progress' %i).value = v
|
||||||
|
get_node('HBoxContainer/%s' %i).hint_tooltip = '%s: %d' %[i, v]
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
|
@ -0,0 +1,449 @@
|
||||||
|
[gd_scene load_steps=3 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://ui/current_resources.gd" type="Script" id=1]
|
||||||
|
[ext_resource path="res://ui/progress_texture.png" type="Texture" id=2]
|
||||||
|
|
||||||
|
[node name="resources" type="Panel"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 64.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 264.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="HBoxContainer" type="HBoxContainer" parent="." index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 179.0
|
||||||
|
margin_bottom = 197.0
|
||||||
|
rect_min_size = Vector2( 175, 200 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 1
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="population" type="VBoxContainer" parent="HBoxContainer" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 4.0
|
||||||
|
margin_right = 29.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/population" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/population" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="jobs" type="VBoxContainer" parent="HBoxContainer" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 33.0
|
||||||
|
margin_right = 58.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/jobs" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/jobs" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="food" type="VBoxContainer" parent="HBoxContainer" index="2"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 62.0
|
||||||
|
margin_right = 87.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Hint", "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/food" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/food" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="resources" type="VBoxContainer" parent="HBoxContainer" index="3"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 91.0
|
||||||
|
margin_right = 116.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/resources" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/resources" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="effort" type="VBoxContainer" parent="HBoxContainer" index="4"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 120.0
|
||||||
|
margin_right = 145.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/effort" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/effort" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="goods" type="VBoxContainer" parent="HBoxContainer" index="5"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 149.0
|
||||||
|
margin_right = 174.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_min_size = Vector2( 25, 0 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 2
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="progress" type="TextureProgress" parent="HBoxContainer/goods" index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 21.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 196.0
|
||||||
|
rect_min_size = Vector2( 0, 175 )
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = ExtResource( 2 )
|
||||||
|
fill_mode = 3
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Rect", "Textures" ]
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="HBoxContainer/goods" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 200.0
|
||||||
|
margin_right = 25.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
|
||||||
|
|
After Width: | Height: | Size: 715 B |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/help.png-e2b8cfcaccb3e2cf0ea7059f79a1642c.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://ui/help.png"
|
||||||
|
source_md5="b6dca20b5d1cd4c2fa015b2a78630632"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/help.png-e2b8cfcaccb3e2cf0ea7059f79a1642c.stex" ]
|
||||||
|
dest_md5="0dcba7b3df6253b41024d662b57f5e15"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -0,0 +1,19 @@
|
||||||
|
extends HBoxContainer
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func set_level_size(size):
|
||||||
|
get_node('mapsize').text = '%d x %d' % [size.x, size.y]
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
|
@ -0,0 +1,77 @@
|
||||||
|
[gd_scene load_steps=2 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://ui/mapsize.gd" type="Script" id=1]
|
||||||
|
|
||||||
|
[node name="MapSizeContainer" type="HBoxContainer"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 14.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 0
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
|
||||||
|
[node name="icon" type="TextureRect" parent="." index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_bottom = 14.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="." index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 4.0
|
||||||
|
margin_right = 61.0
|
||||||
|
margin_bottom = 14.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "Map Size"
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
|
||||||
|
[node name="mapsize" type="Label" parent="." index="2"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 65.0
|
||||||
|
margin_right = 96.0
|
||||||
|
margin_bottom = 14.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "X x X"
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
|
||||||
|
|
After Width: | Height: | Size: 494 B |
|
@ -0,0 +1,32 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/progress_texture.png-457c15d58017cd09c9bd2f6adbe8ac4e.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://ui/progress_texture.png"
|
||||||
|
source_md5="1f3e052e1febf74611f78d634c3e4a30"
|
||||||
|
|
||||||
|
dest_files=[ "res://.import/progress_texture.png-457c15d58017cd09c9bd2f6adbe8ac4e.stex" ]
|
||||||
|
dest_md5="d304153aa385c6eb7be032a85fdeef13"
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -0,0 +1,45 @@
|
||||||
|
extends LineEdit
|
||||||
|
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
||||||
|
|
||||||
|
|
||||||
|
# This only fires when a user presses enter
|
||||||
|
func _on_prompt_text_entered(new_text):
|
||||||
|
print(text)
|
||||||
|
pass # replace with function body
|
||||||
|
|
||||||
|
|
||||||
|
# Here we can do tab complete, ctrl-c clear line, etc.
|
||||||
|
# ctrl-r search
|
||||||
|
func _on_prompt_gui_input(ev):
|
||||||
|
# Check if we have focus on the prompt
|
||||||
|
if not self.has_focus():
|
||||||
|
return
|
||||||
|
if ev is InputEventKey and ev.pressed:
|
||||||
|
if ev.scancode == KEY_C:
|
||||||
|
# This is Ctrl-c
|
||||||
|
if ev.get_scancode_with_modifiers() == 268435523:
|
||||||
|
# Emit signal on clear?
|
||||||
|
self.clear()
|
||||||
|
# How to mark input as consumed
|
||||||
|
if ev.scancode == KEY_TAB:
|
||||||
|
# @TODO: Autocomplete current text if possible
|
||||||
|
print("@TODO: Implemement auto-complete")
|
||||||
|
if ev.scancode == KEY_R:
|
||||||
|
# This is Ctrl-r
|
||||||
|
if ev.get_scancode_with_modifiers() == 268435538:
|
||||||
|
# Emit signal to start search
|
||||||
|
print("@TODO Implementare Ctrl-r Search")
|
|
@ -0,0 +1,21 @@
|
||||||
|
extends VBoxContainer
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
export(Texture) var icon;
|
||||||
|
export(String) var name;
|
||||||
|
export(Texture) var progress_texture;
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
if this.icon:
|
||||||
|
get_node('TextureRect').texture = this.icon
|
||||||
|
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
|
@ -0,0 +1,91 @@
|
||||||
|
[gd_scene load_steps=2 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://ui/resource_progress_bar.gd" type="Script" id=1]
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 1.0
|
||||||
|
margin_bottom = 40.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
alignment = 0
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
icon = null
|
||||||
|
name = null
|
||||||
|
progress_texture = null
|
||||||
|
|
||||||
|
[node name="ProgressBar" type="TextureProgress" parent="." index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 1.0
|
||||||
|
margin_bottom = 1.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 0
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 100.0
|
||||||
|
step = 1.0
|
||||||
|
page = 0.0
|
||||||
|
value = 0.0
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
texture_under = null
|
||||||
|
texture_over = null
|
||||||
|
texture_progress = null
|
||||||
|
radial_fill_degrees = 360.0
|
||||||
|
radial_center_offset = Vector2( 0, 0 )
|
||||||
|
nine_patch_stretch = false
|
||||||
|
_sections_unfolded = [ "Percent" ]
|
||||||
|
|
||||||
|
[node name="TextureRect" type="TextureRect" parent="." index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 1.0
|
||||||
|
margin_bottom = 5.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
stretch_mode = 0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="." index="2"]
|
||||||
|
|
||||||
|
visible = false
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 9.0
|
||||||
|
margin_right = 1.0
|
||||||
|
margin_bottom = 23.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
extends Panel
|
||||||
|
|
||||||
|
# class member variables go here, for example:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "textvar"
|
||||||
|
|
||||||
|
var t_max = 60.0
|
||||||
|
var t = 60.0
|
||||||
|
|
||||||
|
signal skip_presssed
|
||||||
|
|
||||||
|
func set_time_max(t):
|
||||||
|
self.t_max = t
|
||||||
|
self.set_time_left(t)
|
||||||
|
|
||||||
|
func set_time_left(t):
|
||||||
|
if t == null && self.t > self.t_max:
|
||||||
|
self.t = self.t_max
|
||||||
|
if t <= self.t_max:
|
||||||
|
self.t = t
|
||||||
|
get_node('timeleft').text = self.format_time(self.t)
|
||||||
|
|
||||||
|
func format_time(t):
|
||||||
|
var minutes = t / 60;
|
||||||
|
var seconds = int(t) % 60;
|
||||||
|
return '%d:%02d' % [minutes, seconds]
|
||||||
|
|
||||||
|
func _draw():
|
||||||
|
pass
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
# Called every time the node is added to the scene.
|
||||||
|
# Initialization here
|
||||||
|
pass
|
||||||
|
|
||||||
|
#func _process(delta):
|
||||||
|
# # Called every frame. Delta is time since last frame.
|
||||||
|
# # Update game logic here.
|
||||||
|
# pass
|
||||||
|
|
||||||
|
|
||||||
|
func _on_skip_pressed():
|
||||||
|
emit_signal('skip_pressed')
|
|
@ -0,0 +1,93 @@
|
||||||
|
[gd_scene load_steps=3 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://ui/timer.gd" type="Script" id=1]
|
||||||
|
[ext_resource path="res://ui/clock.png" type="Texture" id=2]
|
||||||
|
|
||||||
|
[node name="timer" type="Panel"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 18.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 218.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="TextureRect" type="TextureRect" parent="." index="0"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_right = 175.0
|
||||||
|
margin_bottom = 175.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 1
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
stretch_mode = 0
|
||||||
|
_sections_unfolded = [ "Rect" ]
|
||||||
|
|
||||||
|
[node name="timeleft" type="Label" parent="." index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 39.0
|
||||||
|
margin_top = 179.0
|
||||||
|
margin_right = 131.0
|
||||||
|
margin_bottom = 210.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "asdf
|
||||||
|
"
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
_sections_unfolded = [ "Hint", "Rect" ]
|
||||||
|
|
||||||
|
[node name="skip" type="Button" parent="." index="2"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 103.0
|
||||||
|
margin_top = 173.0
|
||||||
|
margin_right = 174.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = false
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Skip"
|
||||||
|
flat = false
|
||||||
|
align = 1
|
||||||
|
_sections_unfolded = [ "Anchor", "Grow Direction", "Hint", "Margin" ]
|
||||||
|
|
||||||
|
[connection signal="pressed" from="skip" to="." method="_on_skip_pressed"]
|
||||||
|
|
||||||
|
|