Merge branch 'dev' into dev-music

This commit is contained in:
2020-04-21 01:09:00 +02:00
committed by GitHub
16 changed files with 231 additions and 124 deletions

BIN
dist/bosskeeper.exe vendored Normal file

Binary file not shown.

BIN
dist/bosskeeper.pck vendored Normal file

Binary file not shown.

View File

@@ -72,5 +72,4 @@ animations = [ {
[node name="Background" type="AnimatedSprite"] [node name="Background" type="AnimatedSprite"]
frames = SubResource( 1 ) frames = SubResource( 1 )
frame = 42 frame = 42
playing = true
centered = false centered = false

View File

@@ -4,23 +4,16 @@ var _dialogues = []
func _ready(): func _ready():
_dialogues.append([ _dialogues.append([
"Hero;I... I... I need to go pee", "Hero: I... I... I need to go pee",
"Boss;After this you won't need to pee ever again!", "Boss: After this you won't need to pee ever again!"
"More text...............",
"Even more text................",
".................................",
".........................",
"...................",
"...",
"We're done here."
]) ])
_dialogues.append([ _dialogues.append([
"Hero;I've come to slay you, you beast!", "Hero: I've come to slay you, you beast!",
"Boss;Well then... step forward!" "Boss: Well then... step forward!"
]) ])
_dialogues.append([ _dialogues.append([
"Hero;You've killed so many, but you won't kill me!", "Hero: You've killed so many, but you won't kill me!",
"Boss;We'll see about that!" "Boss: We'll see about that!"
]) ])
func get_dialogue(id): func get_dialogue(id):

View File

@@ -1,49 +1,55 @@
extends Control extends Control
var usedCards = [cards.BARREL,cards.BEAR,cards.EMPTY,cards.EMPTY,cards.EMPTY] var usedCards = [cards.BARREL,cards.BEAR,cards.EMPTY,cards.EMPTY,cards.EMPTY]
onready var HBox = $HBoxContainer var cardPositions = [Vector2(10,223), Vector2(65,223), Vector2(120,223), Vector2(175,223), Vector2(230, 223)]
enum cards { enum cards {
BANANA, BANANA,
BARRIERE, BARRIERE,
BARREL, BARREL,
SLIME,
TORCH, TORCH,
BEAR, BEAR,
FLAME, FLAME,
SPIKE, SPIKE,
SLIME,
EMPTY EMPTY
} }
func _ready(): func _ready():
update_cards() update_cards()
pass
export var ObjectParent:NodePath export var ObjectParent:NodePath
func update_cards(): func update_cards():
for child in HBox.get_children(): var index = 0
child.queue_free() while index < 5 and usedCards[index] != cards.EMPTY:
index += 1
for card in usedCards: var newchild = []
var newchild for card in range(index):
match card: match usedCards[card]:
cards.BANANA: cards.BANANA:
newchild=load("res://Objects/Banana/BananaCard.tscn").instance() newchild.append(load("res://Objects/Banana/BananaCard.tscn").instance())
cards.BARRIERE: cards.BARRIERE:
newchild=(load("res://Objects/Barriere/BarrierCard.tscn").instance()) newchild.append(load("res://Objects/Barriere/BarrierCard.tscn").instance())
cards.BARREL: cards.BARREL:
newchild=(load("res://Objects/Barrel/BarrelCard.tscn").instance()) newchild.append(load("res://Objects/Barrel/BarrelCard.tscn").instance())
cards.TORCH: cards.TORCH:
newchild=(load("res://Objects/Torch/TorchCard.tscn").instance()) newchild.append(load("res://Objects/Torch/TorchCard.tscn").instance())
cards.BEAR: cards.BEAR:
newchild=(load("res://Objects/Traps/Bear/BearCard.tscn").instance()) newchild.append(load("res://Objects/Traps/Bear/BearCard.tscn").instance())
cards.FLAME: cards.FLAME:
newchild=(load("res://Objects/Traps/Flame/FlameCard.tscn").instance()) newchild.append(load("res://Objects/Traps/Flame/FlameCard.tscn").instance())
cards.SPIKE: cards.SPIKE:
newchild=(load("res://Objects/Traps/Spike/SpikeCard.tscn").instance()) newchild.append(load("res://Objects/Traps/Spike/SpikeCard.tscn").instance())
cards.SLIME: cards.SLIME:
newchild=(load("res://Objects/Slime/SlimeCard.tscn").instance()) newchild.append(load("res://Objects/Slime/SlimeCard.tscn").instance())
if(newchild!=null): for i in range(index):
HBox.add_child(newchild) $CardsDisplay.add_child(newchild[i])
for i in range(index):
newchild[i].set_begin(cardPositions[i])
for i in range(index):
newchild[i].margin_bottom = newchild[i].margin_top+32
newchild[i].margin_right = newchild[i].margin_left+32

View File

@@ -1,7 +1,6 @@
[gd_scene load_steps=4 format=2] [gd_scene load_steps=3 format=2]
[ext_resource path="res://Menus/DragNDrop/DragSink.tscn" type="PackedScene" id=2] [ext_resource path="res://Menus/DragNDrop/DragSink.tscn" type="PackedScene" id=2]
[ext_resource path="res://Objects/Traps/Flame/FlameCard.tscn" type="PackedScene" id=3]
[ext_resource path="res://Menus/DragNDrop/DragNDropUI.gd" type="Script" id=8] [ext_resource path="res://Menus/DragNDrop/DragNDropUI.gd" type="Script" id=8]
[node name="DragNDropUI" type="Control"] [node name="DragNDropUI" type="Control"]
@@ -21,18 +20,4 @@ margin_left = 2.0
margin_right = 0.0400085 margin_right = 0.0400085
margin_bottom = -30.9 margin_bottom = -30.9
[node name="HBoxContainer" type="HBoxContainer" parent="."] [node name="CardsDisplay" type="Node" parent="."]
margin_left = 17.5188
margin_top = 220.946
margin_right = 57.5188
margin_bottom = 260.946
custom_constants/separation = 60
__meta__ = {
"_edit_use_anchors_": false
}
[node name="FlameCard" parent="HBoxContainer" instance=ExtResource( 3 )]
margin_left = 0.0
margin_top = 0.0
margin_right = 0.0
margin_bottom = 40.0

View File

@@ -1,5 +1,6 @@
extends TextureRect extends TextureRect
# CardDeck # CardDeck
var canNotPlace = false
export var Item:PackedScene export var Item:PackedScene
export var PreviewIcon:Texture export var PreviewIcon:Texture
export var DeleteOnGrab:bool = false export var DeleteOnGrab:bool = false
@@ -8,6 +9,8 @@ var card_level = 0
#if a drag is initiated here #if a drag is initiated here
func get_drag_data(_pos): func get_drag_data(_pos):
if (canNotPlace):
return null
var ctrl = Control.new() var ctrl = Control.new()
var TR = TextureRect.new() var TR = TextureRect.new()
TR.texture = get_resized_texture(PreviewIcon, self.rect_size[0], self.rect_size[1]) TR.texture = get_resized_texture(PreviewIcon, self.rect_size[0], self.rect_size[1])

View File

@@ -2,7 +2,11 @@ extends Control
const DrNDrPre = preload("res://Menus/DragNDrop/DragNDropUI.gd") const DrNDrPre = preload("res://Menus/DragNDrop/DragNDropUI.gd")
var DrNDr var DrNDr
var cardPositions = [Vector2(100,150),Vector2(200,150),Vector2(300,150)]
var randcards = [0,0,0]
var showCards = true
var shownCards = []
var allowChoosCards = false
func _ready(): func _ready():
DrNDr = get_tree().current_scene.get_node("CanvasLayer").get_node("DragNDropUI") DrNDr = get_tree().current_scene.get_node("CanvasLayer").get_node("DragNDropUI")
@@ -10,54 +14,85 @@ func _ready():
func starting(): func starting():
var randcards = [0,0,0] shownCards = []
if (showCards):
randcards[0] = randi() % DrNDrPre.cards.EMPTY $Button.hide()
while(DrNDr.usedCards[0]!=randcards[0] &&\
DrNDr.usedCards[1]!=randcards[0] &&\
DrNDr.usedCards[2]!=randcards[0] &&\
DrNDr.usedCards[3]!=randcards[0] &&\
DrNDr.usedCards[4]!=randcards[0]):
randcards[0] = randi() % DrNDrPre.cards.EMPTY randcards[0] = randi() % DrNDrPre.cards.EMPTY
while(randcards[0] == randcards[1] &&\ while(DrNDr.usedCards[0]==randcards[0] or
DrNDr.usedCards[0]!=randcards[1] &&\ DrNDr.usedCards[1]==randcards[0] or
DrNDr.usedCards[1]!=randcards[1] &&\ DrNDr.usedCards[2]==randcards[0] or
DrNDr.usedCards[2]!=randcards[1] &&\ DrNDr.usedCards[3]==randcards[0] or
DrNDr.usedCards[3]!=randcards[1] &&\ DrNDr.usedCards[4]==randcards[0]):
DrNDr.usedCards[4]!=randcards[1]): randcards[0] = randi() % DrNDrPre.cards.EMPTY
randcards[1] = randi() % DrNDrPre.cards.EMPTY randcards[1] = randi() % DrNDrPre.cards.EMPTY
while(randcards[0] == randcards[1] or
DrNDr.usedCards[0]==randcards[1] or
DrNDr.usedCards[1]==randcards[1] or
DrNDr.usedCards[2]==randcards[1] or
DrNDr.usedCards[3]==randcards[1] or
DrNDr.usedCards[4]==randcards[1]):
randcards[1] = randi() % DrNDrPre.cards.EMPTY
randcards[2] = randi() % DrNDrPre.cards.EMPTY randcards[2] = randi() % DrNDrPre.cards.EMPTY
while(randcards[0] == randcards[2] && randcards[1] == randcards[2] &&\ while(randcards[0] == randcards[2] or randcards[1] == randcards[2] or
DrNDr.usedCards[0]!=randcards[2] &&\ DrNDr.usedCards[0]==randcards[2] or
DrNDr.usedCards[1]!=randcards[2] &&\ DrNDr.usedCards[1]==randcards[2] or
DrNDr.usedCards[2]!=randcards[2] &&\ DrNDr.usedCards[2]==randcards[2] or
DrNDr.usedCards[3]!=randcards[2] &&\ DrNDr.usedCards[3]==randcards[2] or
DrNDr.usedCards[4]!=randcards[2]): DrNDr.usedCards[4]==randcards[2]):
randcards[2] = randi() % DrNDrPre.cards.EMPTY randcards[2] = randi() % DrNDrPre.cards.EMPTY
var shownCards = []
for i in range(3): for i in range(3):
match randcards[i]: match randcards[i]:
DrNDrPre.cards.BANANA: DrNDrPre.cards.BANANA:
shownCards.append(load("res://Objects/Banana/BananaCard.tscn").instance()) shownCards.append(load("res://Objects/Banana/BananaCard.tscn").instance())
DrNDrPre.cards.BARRIERE: DrNDrPre.cards.BARRIERE:
shownCards.append(load("res://Objects/Barriere/BarrierCard.tscn").instance()) shownCards.append(load("res://Objects/Barriere/BarrierCard.tscn").instance())
DrNDrPre.cards.BARREL: DrNDrPre.cards.BARREL:
shownCards.append(load("res://Objects/Barrel/BarrelCard.tscn").instance()) shownCards.append(load("res://Objects/Barrel/BarrelCard.tscn").instance())
DrNDrPre.cards.TORCH: DrNDrPre.cards.TORCH:
shownCards.append(load("res://Objects/Torch/TorchCard.tscn").instance()) shownCards.append(load("res://Objects/Torch/TorchCard.tscn").instance())
DrNDrPre.cards.BEAR: DrNDrPre.cards.BEAR:
shownCards.append(load("res://Objects/Traps/Bear/BearCard.tscn").instance()) shownCards.append(load("res://Objects/Traps/Bear/BearCard.tscn").instance())
DrNDrPre.cards.FLAME: DrNDrPre.cards.FLAME:
shownCards.append(load("res://Objects/Traps/Flame/FlameCard.tscn").instance()) shownCards.append(load("res://Objects/Traps/Flame/FlameCard.tscn").instance())
#DrNDrPre.cards.SPIKE: DrNDrPre.cards.SPIKE:
#shownCards.append(load("res://Objects/Traps/Spike/SpikeCard.tscn").instance()) shownCards.append(load("res://Objects/Traps/Spike/SpikeCard.tscn").instance())
DrNDrPre.cards.SLIME: DrNDrPre.cards.SLIME:
shownCards.append(load("res://Objects/Slime/SlimeCard.tscn").instance()) shownCards.append(load("res://Objects/Slime/SlimeCard.tscn").instance())
for i in range(3): for i in range(3):
$Cards.add_child(shownCards[i]) $Cards.add_child(shownCards[i])
shownCards[0].set_begin ( Vector2(100,150)) shownCards[0].set_begin (cardPositions[0])
shownCards[1].set_begin ( Vector2(200,150)) shownCards[1].set_begin (cardPositions[1])
shownCards[2].set_begin ( Vector2(300,150)) shownCards[2].set_begin (cardPositions[2])
for i in range(3):
shownCards[i].canNotPlace = true
shownCards[i].margin_bottom = shownCards[i].margin_top+32
shownCards[i].margin_right = shownCards[i].margin_left+32
var i = 0
allowChoosCards = true
else:
pass
func _input(event):
if((event is InputEventMouseButton) && allowChoosCards):
for card in range(3):
if(event.position[0] >= cardPositions[card][0] &&
event.position[0] <= cardPositions[card][0]+32 &&
event.position[1] >= cardPositions[card][1] &&
event.position[1] <= cardPositions[card][1]+32):
for i in range(5):
if (DrNDr.usedCards[i] == DrNDrPre.cards.EMPTY):
DrNDr.usedCards[i] = randcards[card]
Engine.time_scale=1
allowChoosCards = false
self.hide()
if (i == 4):
showCards = false
for j in range(3):
shownCards[j].queue_free()
DrNDr.update_cards()
return
func _on_Button_pressed(): func _on_Button_pressed():

View File

@@ -16,15 +16,15 @@ animations = [ {
"name": "lvl0", "name": "lvl0",
"speed": 60.0 "speed": 60.0
}, { }, {
"frames": [ ExtResource( 4 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
}, {
"frames": [ ExtResource( 3 ) ], "frames": [ ExtResource( 3 ) ],
"loop": false, "loop": false,
"name": "lvl2", "name": "lvl2",
"speed": 60.0 "speed": 60.0
}, {
"frames": [ ExtResource( 4 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
} ] } ]
[node name="BananaCard" type="TextureRect"] [node name="BananaCard" type="TextureRect"]

View File

@@ -16,15 +16,15 @@ animations = [ {
"name": "lvl0", "name": "lvl0",
"speed": 60.0 "speed": 60.0
}, { }, {
"frames": [ ExtResource( 3 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
}, {
"frames": [ ExtResource( 2 ) ], "frames": [ ExtResource( 2 ) ],
"loop": false, "loop": false,
"name": "lvl2", "name": "lvl2",
"speed": 60.0 "speed": 60.0
}, {
"frames": [ ExtResource( 3 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
} ] } ]
[node name="GenericCard3" type="TextureRect"] [node name="GenericCard3" type="TextureRect"]

View File

@@ -0,0 +1,52 @@
[gd_scene load_steps=10 format=2]
[ext_resource path="res://Menus/DragNDrop/DragSource.gd" type="Script" id=1]
[ext_resource path="res://Objects/Card/level2.png" type="Texture" id=2]
[ext_resource path="res://Objects/Card/level1.png" type="Texture" id=3]
[ext_resource path="res://Objects/Card/level0.png" type="Texture" id=4]
[ext_resource path="res://Objects/Card/card.png" type="Texture" id=5]
[ext_resource path="res://Objects/Slime/Slime.tscn" type="PackedScene" id=6]
[ext_resource path="res://testSprites/slime.png" type="Texture" id=7]
[ext_resource path="res://Objects/Slime/slime_icon.png" type="Texture" id=8]
[sub_resource type="SpriteFrames" id=1]
animations = [ {
"frames": [ ExtResource( 4 ) ],
"loop": false,
"name": "lvl0",
"speed": 60.0
}, {
"frames": [ ExtResource( 2 ) ],
"loop": false,
"name": "lvl2",
"speed": 60.0
}, {
"frames": [ ExtResource( 3 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
} ]
[node name="SlimeCard" type="TextureRect"]
margin_left = 124.0
margin_top = 220.0
margin_right = 156.0
margin_bottom = 252.0
texture = ExtResource( 8 )
expand = true
script = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}
Item = ExtResource( 6 )
PreviewIcon = ExtResource( 7 )
[node name="Sprite" type="Sprite" parent="."]
position = Vector2( 15.729, 15.793 )
z_index = -1
texture = ExtResource( 5 )
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
position = Vector2( 33.1035, 40.3068 )
frames = SubResource( 1 )
animation = "lvl0"

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 B

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/slime_icon.png-dc1d3257111103e477a0d76ad442deeb.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Objects/Slime/slime_icon.png"
dest_files=[ "res://.import/slime_icon.png-dc1d3257111103e477a0d76ad442deeb.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=false
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=false
svg/scale=1.0

View File

@@ -15,15 +15,15 @@ animations = [ {
"name": "lvl0", "name": "lvl0",
"speed": 60.0 "speed": 60.0
}, { }, {
"frames": [ ExtResource( 6 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
}, {
"frames": [ ExtResource( 5 ) ], "frames": [ ExtResource( 5 ) ],
"loop": false, "loop": false,
"name": "lvl2", "name": "lvl2",
"speed": 60.0 "speed": 60.0
}, {
"frames": [ ExtResource( 6 ) ],
"loop": false,
"name": "lvl1",
"speed": 60.0
} ] } ]
[node name="TorchCard" type="TextureRect"] [node name="TorchCard" type="TextureRect"]

View File

@@ -1,14 +1,14 @@
extends Node2D extends Node2D
export(int) var WinRounds= 10 export(int) var WinRounds = 10
export(PackedScene) var HeroTemplate export(PackedScene) var HeroTemplate
export(Vector2) var InitialSpawnPoint=Vector2(344,125) export(Vector2) var InitialSpawnPoint=Vector2(344,125)
export(Rect2) var SpawnBoxRange=Rect2(40,40,450,140) export(Rect2) var SpawnBoxRange=Rect2(40,40,450,140)
export(float) var MinDistanceToBoss=100.0 export(float) var MinDistanceToBoss=100.0
var round_counter = 0
var passed_final_Round = false
var round_counter=0
var passed_final_Round=false
func _ready(): func _ready():
randomize() randomize()
@@ -19,33 +19,34 @@ func _ready():
func determine_spawnpoint(): func determine_spawnpoint():
var point = Vector2(rand_range(SpawnBoxRange.position.x,SpawnBoxRange.position.x+SpawnBoxRange.size.x),rand_range(SpawnBoxRange.position.y,SpawnBoxRange.position.y+SpawnBoxRange.size.y)) var point = Vector2(rand_range(SpawnBoxRange.position.x,SpawnBoxRange.position.x+SpawnBoxRange.size.x),rand_range(SpawnBoxRange.position.y,SpawnBoxRange.position.y+SpawnBoxRange.size.y))
while(point.distance_to($YSort/SlimeBoss.position)<MinDistanceToBoss): while(point.distance_to($YSort/SlimeBoss.position) < MinDistanceToBoss):
point = Vector2(rand_range(SpawnBoxRange.position.x,SpawnBoxRange.position.x+SpawnBoxRange.size.x),rand_range(SpawnBoxRange.position.y,SpawnBoxRange.position.y+SpawnBoxRange.size.y)) point = Vector2(rand_range(SpawnBoxRange.position.x,SpawnBoxRange.position.x+SpawnBoxRange.size.x),rand_range(SpawnBoxRange.position.y,SpawnBoxRange.position.y+SpawnBoxRange.size.y))
return point return point
func hero_has_died(): func hero_has_died():
round_counter+=1 round_counter += 1
if (round_counter>=WinRounds and passed_final_Round ==false): if (round_counter >= WinRounds and not passed_final_Round):
passed_final_Round=true passed_final_Round = true
$CanvasLayer/Win.show() $CanvasLayer/Win.show()
Engine.time_scale=0 Engine.time_scale = 0
var point = determine_spawnpoint() var point = determine_spawnpoint()
spawn_new_hero(point.x,point.y) spawn_new_hero(point.x, point.y)
$CanvasLayer/SelectUpgradeUI.show() $CanvasLayer/SelectUpgradeUI.show()
$CanvasLayer/SelectUpgradeUI/Button.show()
$CanvasLayer/SelectUpgradeUI.starting() $CanvasLayer/SelectUpgradeUI.starting()
func spawn_new_hero(x:float,y:float): func spawn_new_hero(x:float,y:float):
var hero = HeroTemplate.instance() var hero = HeroTemplate.instance()
hero.position=Vector2(x,y) hero.position = Vector2(x, y)
hero.name = "Player" hero.name = "Player"
$YSort.add_child(hero) $YSort.add_child(hero)
func _on_Win_pressed(): func _on_Win_pressed():
if passed_final_Round: if passed_final_Round:
#TODO CHANGE SCENE TO WINSCREEN # TODO CHANGE SCENE TO WINSCREEN
pass pass
pass # Replace with function body. pass # Replace with function body.

View File

@@ -245,7 +245,6 @@ HeroTemplate = ExtResource( 1 )
[node name="Background" parent="." instance=ExtResource( 7 )] [node name="Background" parent="." instance=ExtResource( 7 )]
pause_mode = 1 pause_mode = 1
frame = 20 frame = 20
playing = false
[node name="FloorTileMap" type="TileMap" parent="."] [node name="FloorTileMap" type="TileMap" parent="."]
pause_mode = 1 pause_mode = 1