Files
kicking-high/proto2/ui/interaction.gd
2019-08-08 17:32:47 +03:00

70 lines
2.0 KiB
GDScript

extends Control
var active_npc
func hire_as_team():
var npc_data: Dictionary = active_npc.get_meta("data")
var newkey = 0
var teamkeys = world.team.keys()
if teamkeys.size() > 0:
var maxkey = teamkeys.max()
newkey = maxkey + 1
if npc_data.gender == 0:
var dst_node = get_node("/root/main/quest_dst_male_dorm")
var dst = dst_node.global_transform.origin
active_npc.walkto(dst)
world.team[newkey] = npc_data
print("line: ", world.line.size())
world.line.erase(npc_data.id)
npc_data.erase("id")
print("line2: ", world.line.size())
npc_data.type = 0
else:
var dst_node = get_node("/root/main/quest_dst_female_dorm")
var dst = dst_node.global_transform.origin
active_npc.walkto(dst)
world.team[newkey] = npc_data
print("line: ", world.line.size())
world.line.erase(npc_data.id)
npc_data.erase("id")
print("line2: ", world.line.size())
npc_data.type = 0
hide()
func hire_as_cheer_team():
var npc_data: Dictionary = active_npc.get_meta("data")
var newkey = 0
var teamkeys = world.cheer_team.keys()
if teamkeys.size() > 0:
var maxkey = teamkeys.max()
newkey = maxkey + 1
if npc_data.gender == 1:
var dst_node = get_node("/root/main/quest_dst_female_dorm")
var dst = dst_node.global_transform.origin
active_npc.walkto(dst)
world.cheer_team[newkey] = npc_data
print("line: ", world.line.size())
if npc_data.has("id"):
if world.line.has(npc_data.id):
world.line.erase(npc_data.id)
npc_data.erase("id")
print("line2: ", world.line.size())
npc_data.type = 0
hide()
func _ready():
hide()
$h/hire_team.connect("pressed", self, "hire_as_team")
$h/hire_cheer_team.connect("pressed", self, "hire_as_cheer_team")
func start_interaction(npc):
active_npc = npc
var npc_data: Dictionary = active_npc.get_meta("data")
if npc_data.has("id"):
show()
if npc_data.gender == 0:
$h/hire_cheer_team.hide()
else:
$h/hire_cheer_team.show()
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
# pass