Ajout Projet Godot
10
GODOT/Coin.gd
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
extends RigidBody2D
|
||||||
|
|
||||||
|
export var min_vitesse = 150
|
||||||
|
export var max_vitesse = 200
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
$AnimatedSprite.animation = "coin"
|
||||||
|
|
||||||
|
func _on_VisibilityNotifier2D_screen_exited():
|
||||||
|
queue_free()
|
56
GODOT/Coin.tscn
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
[gd_scene load_steps=10 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://imgs/coin.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://Coin.gd" type="Script" id=2]
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=1]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=2]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=3]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 64, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=4]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=5]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 32, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id=6]
|
||||||
|
animations = [ {
|
||||||
|
"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ), SubResource( 4 ), SubResource( 5 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "coin",
|
||||||
|
"speed": 5.0
|
||||||
|
} ]
|
||||||
|
|
||||||
|
[sub_resource type="CircleShape2D" id=7]
|
||||||
|
radius = 16.5576
|
||||||
|
|
||||||
|
[node name="Coin" type="RigidBody2D" groups=[
|
||||||
|
"coins",
|
||||||
|
]]
|
||||||
|
collision_mask = 2147483648
|
||||||
|
gravity_scale = 0.0
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
|
||||||
|
scale = Vector2( 3, 3 )
|
||||||
|
frames = SubResource( 6 )
|
||||||
|
animation = "coin"
|
||||||
|
playing = true
|
||||||
|
|
||||||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
position = Vector2( -8.90899, -8.5749 )
|
||||||
|
shape = SubResource( 7 )
|
||||||
|
|
||||||
|
[node name="VisibilityNotifier2D" type="VisibilityNotifier2D" parent="."]
|
||||||
|
position = Vector2( -9.07603, -7.46128 )
|
||||||
|
scale = Vector2( 1.55125, 1.47886 )
|
13
GODOT/Ennemi.gd
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
extends RigidBody2D
|
||||||
|
|
||||||
|
export var min_vitesse = 175
|
||||||
|
export var max_vitesse = 225
|
||||||
|
export var type_ennemi = "None"
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
var type = $AnimatedSprite.frames.get_animation_names() # liste des animations
|
||||||
|
$AnimatedSprite.animation = type[randi() % type.size()] # choix d'une animation parmis la liste
|
||||||
|
type_ennemi = $AnimatedSprite.animation
|
||||||
|
|
||||||
|
func _on_VisibilityNotifier2D_screen_exited():
|
||||||
|
queue_free()
|
74
GODOT/Ennemi.tscn
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
[gd_scene load_steps=12 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://imgs/fantome.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://Ennemi.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://imgs/oeil.png" type="Texture" id=3]
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=1]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=2]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 64, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=3]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 32, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=4]
|
||||||
|
atlas = ExtResource( 3 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=5]
|
||||||
|
atlas = ExtResource( 3 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=6]
|
||||||
|
atlas = ExtResource( 3 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id=7]
|
||||||
|
animations = [ {
|
||||||
|
"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "fantome",
|
||||||
|
"speed": 4.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 4 ), SubResource( 5 ), SubResource( 6 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "oeil",
|
||||||
|
"speed": 6.0
|
||||||
|
} ]
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleShape2D" id=8]
|
||||||
|
radius = 23.5359
|
||||||
|
height = 5.09861
|
||||||
|
|
||||||
|
[node name="Ennemi" type="RigidBody2D" groups=[
|
||||||
|
"ennemis",
|
||||||
|
]]
|
||||||
|
position = Vector2( 0, -0.198425 )
|
||||||
|
collision_mask = 0
|
||||||
|
gravity_scale = 0.0
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_group_": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
|
||||||
|
position = Vector2( 0.339, -7.739 )
|
||||||
|
scale = Vector2( 2, 2 )
|
||||||
|
frames = SubResource( 7 )
|
||||||
|
animation = "oeil"
|
||||||
|
frame = 1
|
||||||
|
playing = true
|
||||||
|
|
||||||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
position = Vector2( 0.087, -7.283 )
|
||||||
|
scale = Vector2( 1.011, 0.968 )
|
||||||
|
shape = SubResource( 8 )
|
||||||
|
|
||||||
|
[node name="VisibilityNotifier2D" type="VisibilityNotifier2D" parent="."]
|
||||||
|
position = Vector2( -0.099213, -7.04408 )
|
||||||
|
scale = Vector2( 1.9822, 2.20048 )
|
103
GODOT/Main.gd
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
extends Node
|
||||||
|
|
||||||
|
export (PackedScene) var Ennemi
|
||||||
|
export (PackedScene) var Coin
|
||||||
|
var score
|
||||||
|
var vie = 3
|
||||||
|
var content_music
|
||||||
|
var content
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
var file = File.new()
|
||||||
|
var difficulty = "0.2"
|
||||||
|
file.open("res://settings_difficulty.txt", File.WRITE)
|
||||||
|
file.store_string(difficulty)
|
||||||
|
file.close()
|
||||||
|
$TimerEnnemi.set_wait_time(float(difficulty))
|
||||||
|
file.open("res://settings_music.txt", File.WRITE)
|
||||||
|
file.store_string("on")
|
||||||
|
file.close()
|
||||||
|
randomize()
|
||||||
|
|
||||||
|
func perdu():
|
||||||
|
$TimerScore.stop()
|
||||||
|
$TimerEnnemi.stop()
|
||||||
|
$TimerCoin.stop()
|
||||||
|
get_tree().call_group("ennemis", "queue_free") # supprime tous les ennemis restants dans le groupe "ennemis"
|
||||||
|
get_tree().call_group("coins", "queue_free") # pareil pour les pieces
|
||||||
|
$AudioStreamPlayer.stop()
|
||||||
|
if content_music == "on":
|
||||||
|
$AudioGameOver.play()
|
||||||
|
$Menu.show_partie_perdue()
|
||||||
|
$TextureRect.texture = load("res://imgs/background.png")
|
||||||
|
|
||||||
|
func nouvelle_partie():
|
||||||
|
score = 0
|
||||||
|
$Joueur.start($PositionDebut.position)
|
||||||
|
$TimerDebut.start()
|
||||||
|
vie = 3
|
||||||
|
$Vie.update_health(vie)
|
||||||
|
$Menu.update_score(score)
|
||||||
|
var file_music = File.new()
|
||||||
|
file_music.open("res://settings_music.txt", File.READ)
|
||||||
|
content_music = file_music.get_as_text()
|
||||||
|
file_music.close()
|
||||||
|
if content_music == "on":
|
||||||
|
$AudioStreamPlayer.play()
|
||||||
|
$AudioGameOver.stop()
|
||||||
|
$Menu.show_message("Des ennemis arrivent...")
|
||||||
|
$TextureRect.texture = load("res://imgs/background_ig.png")
|
||||||
|
# lecture des paramètres
|
||||||
|
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_difficulty.txt", File.READ)
|
||||||
|
content = file.get_as_text()
|
||||||
|
file.close()
|
||||||
|
$TimerEnnemi.set_wait_time(float(content))
|
||||||
|
|
||||||
|
func _on_TimerEnnemi_timeout():
|
||||||
|
$Path2D/SpawnEnnemi.offset = randi() # Choisi un endroit aléatoire sur Path2D (autour de l'écran)
|
||||||
|
var ennemi = Ennemi.instance() # créer une instance d'un ennemi
|
||||||
|
add_child(ennemi) # ajout de l'ennemi à la scène
|
||||||
|
var direction = $Path2D/SpawnEnnemi.rotation + PI / 2 # direction de l'ennemi perpendiculaire à sa trajectoire
|
||||||
|
ennemi.position = $Path2D/SpawnEnnemi.position # fait spawn l'ennemi à l'endroit aléatoire
|
||||||
|
direction += rand_range(-deg2rad(45), deg2rad(45)) # ajout d'un aléatoire de 90° dans la direction
|
||||||
|
if ennemi.type_ennemi == "oeil":
|
||||||
|
ennemi.rotation = direction # l'ennemi regarde devant lui
|
||||||
|
ennemi.linear_velocity = Vector2(rand_range(ennemi.min_vitesse, ennemi.max_vitesse), 0) # vitesse de l'ennemi
|
||||||
|
ennemi.linear_velocity = ennemi.linear_velocity.rotated(direction) # direction de l'ennemi
|
||||||
|
|
||||||
|
func _on_TimerDebut_timeout(): # démarre les autres timers
|
||||||
|
$TimerEnnemi.start()
|
||||||
|
$TimerCoin.start()
|
||||||
|
$TimerScore.start()
|
||||||
|
|
||||||
|
func _on_TimerCoin_timeout():
|
||||||
|
$Path2D/SpawnEnnemi.offset = randi()
|
||||||
|
var coin = Coin.instance()
|
||||||
|
add_child(coin)
|
||||||
|
var direction = $Path2D/SpawnEnnemi.rotation + PI / 2
|
||||||
|
coin.position = $Path2D/SpawnEnnemi.position
|
||||||
|
direction += rand_range(-deg2rad(45), deg2rad(45))
|
||||||
|
coin.linear_velocity = Vector2(rand_range(coin.min_vitesse, coin.max_vitesse), 0)
|
||||||
|
coin.linear_velocity = coin.linear_velocity.rotated(direction)
|
||||||
|
|
||||||
|
func _on_TimerScore_timeout(): # augmente le score de 1 toutes les secondes (correspond au wait time)
|
||||||
|
score += 1
|
||||||
|
$Menu.update_score(score)
|
||||||
|
|
||||||
|
func piece():
|
||||||
|
score += 5
|
||||||
|
if content_music == "on":
|
||||||
|
$AudioPiece.play()
|
||||||
|
$Menu.update_score(score)
|
||||||
|
get_tree().call_group("coins", "queue_free") # supprime les pieces
|
||||||
|
|
||||||
|
func _on_Joueur_touche():
|
||||||
|
if not $TimerIsostasieVie.time_left > 0:
|
||||||
|
vie -= 1
|
||||||
|
$Vie.update_health(vie)
|
||||||
|
$TimerIsostasieVie.start()
|
||||||
|
|
||||||
|
func _on_Menu_musicoff():
|
||||||
|
$AudioGameOver.stop()
|
89
GODOT/Main.tscn
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
[gd_scene load_steps=12 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://Player.tscn" type="PackedScene" id=1]
|
||||||
|
[ext_resource path="res://Main.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://Ennemi.tscn" type="PackedScene" id=3]
|
||||||
|
[ext_resource path="res://Menu.tscn" type="PackedScene" id=4]
|
||||||
|
[ext_resource path="res://imgs/background.png" type="Texture" id=5]
|
||||||
|
[ext_resource path="res://sounds/music_background.wav" type="AudioStream" id=6]
|
||||||
|
[ext_resource path="res://sounds/gameover.wav" type="AudioStream" id=7]
|
||||||
|
[ext_resource path="res://Coin.tscn" type="PackedScene" id=8]
|
||||||
|
[ext_resource path="res://Vie.tscn" type="PackedScene" id=9]
|
||||||
|
[ext_resource path="res://sounds/pickupcoin.wav" type="AudioStream" id=10]
|
||||||
|
|
||||||
|
[sub_resource type="Curve2D" id=1]
|
||||||
|
_data = {
|
||||||
|
"points": PoolVector2Array( 0, 0, 0, 0, -1.09833, -1.42838, 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, 480, 720, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, -1.09833, -1.42838 )
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Main" type="Node"]
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
Ennemi = ExtResource( 3 )
|
||||||
|
Coin = ExtResource( 8 )
|
||||||
|
|
||||||
|
[node name="TextureRect" type="TextureRect" parent="."]
|
||||||
|
margin_right = 480.0
|
||||||
|
margin_bottom = 720.0
|
||||||
|
texture = ExtResource( 5 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Joueur" parent="." instance=ExtResource( 1 )]
|
||||||
|
|
||||||
|
[node name="TimerEnnemi" type="Timer" parent="."]
|
||||||
|
wait_time = 0.2
|
||||||
|
|
||||||
|
[node name="TimerScore" type="Timer" parent="."]
|
||||||
|
|
||||||
|
[node name="TimerDebut" type="Timer" parent="."]
|
||||||
|
wait_time = 2.0
|
||||||
|
one_shot = true
|
||||||
|
|
||||||
|
[node name="TimerCoin" type="Timer" parent="."]
|
||||||
|
wait_time = 5.0
|
||||||
|
|
||||||
|
[node name="TimerIsostasieVie" type="Timer" parent="."]
|
||||||
|
one_shot = true
|
||||||
|
|
||||||
|
[node name="PositionDebut" type="Position2D" parent="."]
|
||||||
|
position = Vector2( 240, 320 )
|
||||||
|
|
||||||
|
[node name="Path2D" type="Path2D" parent="."]
|
||||||
|
curve = SubResource( 1 )
|
||||||
|
|
||||||
|
[node name="SpawnEnnemi" type="PathFollow2D" parent="Path2D"]
|
||||||
|
position = Vector2( -1.09833, -1.42838 )
|
||||||
|
rotation = 0.00296902
|
||||||
|
|
||||||
|
[node name="Menu" parent="." instance=ExtResource( 4 )]
|
||||||
|
|
||||||
|
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
|
||||||
|
stream = ExtResource( 6 )
|
||||||
|
volume_db = -24.233
|
||||||
|
|
||||||
|
[node name="AudioGameOver" type="AudioStreamPlayer" parent="."]
|
||||||
|
stream = ExtResource( 7 )
|
||||||
|
|
||||||
|
[node name="Vie" parent="." instance=ExtResource( 9 )]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
margin_left = -72.5
|
||||||
|
margin_top = -36.0
|
||||||
|
margin_right = -35.5
|
||||||
|
margin_bottom = -27.0
|
||||||
|
|
||||||
|
[node name="AudioPiece" type="AudioStreamPlayer" parent="."]
|
||||||
|
stream = ExtResource( 10 )
|
||||||
|
volume_db = 3.0
|
||||||
|
[connection signal="perdu" from="Joueur" to="." method="perdu"]
|
||||||
|
[connection signal="piece" from="Joueur" to="." method="piece"]
|
||||||
|
[connection signal="touche" from="Joueur" to="." method="_on_Joueur_touche"]
|
||||||
|
[connection signal="timeout" from="TimerEnnemi" to="." method="_on_TimerEnnemi_timeout"]
|
||||||
|
[connection signal="timeout" from="TimerScore" to="." method="_on_TimerScore_timeout"]
|
||||||
|
[connection signal="timeout" from="TimerDebut" to="." method="_on_TimerDebut_timeout"]
|
||||||
|
[connection signal="timeout" from="TimerCoin" to="." method="_on_TimerCoin_timeout"]
|
||||||
|
[connection signal="lancement_partie" from="Menu" to="." method="nouvelle_partie"]
|
||||||
|
[connection signal="musicoff" from="Menu" to="." method="_on_Menu_musicoff"]
|
105
GODOT/Menu.gd
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
extends CanvasLayer
|
||||||
|
|
||||||
|
signal lancement_partie
|
||||||
|
var difficulty_facile = "0.5"
|
||||||
|
var difficulty_normal = "0.2"
|
||||||
|
var difficulty_difficile = "0.1"
|
||||||
|
signal musicoff
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
cacher_settings()
|
||||||
|
AllButtonNiveauWhite()
|
||||||
|
AllButtonMusicWhite()
|
||||||
|
$Settings/ButtonNormal.add_color_override("font_color", Color.green)
|
||||||
|
$Settings/ButtonMusiqueON.add_color_override("font_color", Color.green)
|
||||||
|
|
||||||
|
func show_message(text):
|
||||||
|
$LabelMessage.text = text
|
||||||
|
$LabelMessage.show()
|
||||||
|
$TimerMessage.start()
|
||||||
|
|
||||||
|
func show_partie_perdue():
|
||||||
|
$"Menu Principal/ButtonStart".show()
|
||||||
|
$"Menu Principal/ButtonSettings".show()
|
||||||
|
$"Menu Principal/LabelTitre".show()
|
||||||
|
show_message("Perdu !")
|
||||||
|
|
||||||
|
func update_score(score):
|
||||||
|
$"Menu Principal/LabelScore".text = str(score)
|
||||||
|
|
||||||
|
func _on_TimerMessage_timeout():
|
||||||
|
$LabelMessage.hide()
|
||||||
|
|
||||||
|
func _on_ButtonStart_pressed():
|
||||||
|
$"Menu Principal/ButtonStart".hide()
|
||||||
|
emit_signal("lancement_partie")
|
||||||
|
$"Menu Principal/LabelTitre".hide()
|
||||||
|
$"Menu Principal/ButtonSettings".hide()
|
||||||
|
|
||||||
|
func _on_ButtonSettings_pressed():
|
||||||
|
for i in $"Menu Principal".get_children():
|
||||||
|
i.hide()
|
||||||
|
montrer_settings()
|
||||||
|
|
||||||
|
func cacher_settings(): # on cache les settings
|
||||||
|
for i in $Settings.get_children():
|
||||||
|
i.hide()
|
||||||
|
|
||||||
|
func montrer_settings(): # on affiche les settings
|
||||||
|
for i in $Settings.get_children():
|
||||||
|
i.show()
|
||||||
|
|
||||||
|
func _on_ButtonBackToMenu_pressed():
|
||||||
|
for i in $"Menu Principal".get_children():
|
||||||
|
i.show()
|
||||||
|
cacher_settings()
|
||||||
|
|
||||||
|
func _on_ButtonFacile_pressed():
|
||||||
|
AllButtonNiveauWhite()
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_difficulty.txt", File.WRITE)
|
||||||
|
file.store_string(difficulty_facile)
|
||||||
|
file.close()
|
||||||
|
$Settings/ButtonFacile.add_color_override("font_color", Color.green)
|
||||||
|
|
||||||
|
func _on_ButtonNormal_pressed():
|
||||||
|
AllButtonNiveauWhite()
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_difficulty.txt", File.WRITE)
|
||||||
|
file.store_string(difficulty_normal)
|
||||||
|
file.close()
|
||||||
|
$Settings/ButtonNormal.add_color_override("font_color", Color.green)
|
||||||
|
|
||||||
|
func _on_ButtonDifficile_pressed():
|
||||||
|
AllButtonNiveauWhite()
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_difficulty.txt", File.WRITE)
|
||||||
|
file.store_string(difficulty_difficile)
|
||||||
|
file.close()
|
||||||
|
$Settings/ButtonDifficile.add_color_override("font_color", Color.green)
|
||||||
|
|
||||||
|
func AllButtonNiveauWhite():
|
||||||
|
$Settings/ButtonFacile.add_color_override("font_color", Color.white)
|
||||||
|
$Settings/ButtonNormal.add_color_override("font_color", Color.white)
|
||||||
|
$Settings/ButtonDifficile.add_color_override("font_color", Color.white)
|
||||||
|
|
||||||
|
func _on_ButtonMusiqueON_pressed():
|
||||||
|
AllButtonMusicWhite()
|
||||||
|
$Settings/ButtonMusiqueON.add_color_override("font_color", Color.green)
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_music.txt", File.WRITE)
|
||||||
|
file.store_string("on")
|
||||||
|
file.close()
|
||||||
|
|
||||||
|
func _on_ButtonMusiqueOFF_pressed():
|
||||||
|
AllButtonMusicWhite()
|
||||||
|
$Settings/ButtonMusiqueOFF.add_color_override("font_color", Color.red)
|
||||||
|
var file = File.new()
|
||||||
|
file.open("res://settings_music.txt", File.WRITE)
|
||||||
|
file.store_string("off")
|
||||||
|
file.close()
|
||||||
|
emit_signal("musicoff")
|
||||||
|
|
||||||
|
func AllButtonMusicWhite():
|
||||||
|
$Settings/ButtonMusiqueOFF.add_color_override("font_color", Color.white)
|
||||||
|
$Settings/ButtonMusiqueON.add_color_override("font_color", Color.white)
|
229
GODOT/Menu.tscn
Normal file
|
@ -0,0 +1,229 @@
|
||||||
|
[gd_scene load_steps=6 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://Menu.gd" type="Script" id=1]
|
||||||
|
|
||||||
|
[sub_resource type="DynamicFontData" id=1]
|
||||||
|
font_path = "res://fonts/Marshmallow.ttf"
|
||||||
|
|
||||||
|
[sub_resource type="DynamicFont" id=2]
|
||||||
|
size = 25
|
||||||
|
font_data = SubResource( 1 )
|
||||||
|
|
||||||
|
[sub_resource type="DynamicFont" id=3]
|
||||||
|
size = 58
|
||||||
|
font_data = SubResource( 1 )
|
||||||
|
|
||||||
|
[sub_resource type="DynamicFont" id=4]
|
||||||
|
size = 50
|
||||||
|
font_data = SubResource( 1 )
|
||||||
|
|
||||||
|
[node name="Menu" type="CanvasLayer"]
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
|
||||||
|
[node name="Menu Principal" type="Node" parent="."]
|
||||||
|
|
||||||
|
[node name="LabelRecord" type="Label" parent="Menu Principal"]
|
||||||
|
margin_left = 217.236
|
||||||
|
margin_top = 18.6199
|
||||||
|
margin_right = 349.236
|
||||||
|
margin_bottom = 72.6199
|
||||||
|
custom_fonts/font = SubResource( 2 )
|
||||||
|
custom_colors/font_color = Color( 1, 1, 1, 1 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
text = "Record"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="LabelScore" type="Label" parent="Menu Principal"]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
margin_left = -9.01361
|
||||||
|
margin_top = 50.2254
|
||||||
|
margin_right = 30.9864
|
||||||
|
margin_bottom = 104.225
|
||||||
|
custom_fonts/font = SubResource( 3 )
|
||||||
|
custom_colors/font_color = Color( 1, 1, 1, 1 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
text = "0"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonStart" type="Button" parent="Menu Principal"]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
margin_left = -185.0
|
||||||
|
margin_top = -129.0
|
||||||
|
margin_right = 185.0
|
||||||
|
margin_bottom = -69.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Commencer une partie"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="LabelTitre" type="Label" parent="Menu Principal"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_top = -136.0
|
||||||
|
margin_bottom = -82.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
text = "Yokai Survive"
|
||||||
|
align = 1
|
||||||
|
autowrap = true
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonSettings" type="Button" parent="Menu Principal"]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
margin_left = -101.0
|
||||||
|
margin_top = -60.0
|
||||||
|
margin_right = 101.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Parametres"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Settings" type="Node" parent="."]
|
||||||
|
|
||||||
|
[node name="ButtonFacile" type="Button" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_left = 50.0
|
||||||
|
margin_top = -240.0
|
||||||
|
margin_right = 152.0
|
||||||
|
margin_bottom = -180.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Facile"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonNormal" type="Button" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_left = 167.0
|
||||||
|
margin_top = -240.0
|
||||||
|
margin_right = 287.0
|
||||||
|
margin_bottom = -180.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Normal"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonDifficile" type="Button" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_left = 300.0
|
||||||
|
margin_top = -240.0
|
||||||
|
margin_right = 439.0
|
||||||
|
margin_bottom = -180.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Difficile"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonBackToMenu" type="Button" parent="Settings"]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
margin_left = -131.0
|
||||||
|
margin_top = -60.0
|
||||||
|
margin_right = 131.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "Retour au menu"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="LabelNiveau" type="Label" parent="Settings"]
|
||||||
|
anchor_right = 1.0
|
||||||
|
margin_top = 50.0
|
||||||
|
margin_bottom = 104.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
text = "Niveau"
|
||||||
|
align = 1
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="LabelMusique" type="Label" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_top = -128.0
|
||||||
|
margin_bottom = -74.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
text = "Musique"
|
||||||
|
align = 1
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonMusiqueON" type="Button" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_left = 157.766
|
||||||
|
margin_top = -71.0
|
||||||
|
margin_right = 222.766
|
||||||
|
margin_bottom = -11.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "ON"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="ButtonMusiqueOFF" type="Button" parent="Settings"]
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
margin_left = 239.0
|
||||||
|
margin_top = -71.0
|
||||||
|
margin_right = 305.0
|
||||||
|
margin_bottom = -11.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
text = "OFF"
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="TimerMessage" type="Timer" parent="."]
|
||||||
|
wait_time = 2.0
|
||||||
|
one_shot = true
|
||||||
|
|
||||||
|
[node name="LabelMessage" type="Label" parent="."]
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
margin_left = -240.0
|
||||||
|
margin_top = 150.0
|
||||||
|
margin_right = 240.0
|
||||||
|
margin_bottom = 14.0
|
||||||
|
custom_fonts/font = SubResource( 4 )
|
||||||
|
custom_colors/font_color_shadow = Color( 0, 0, 0, 1 )
|
||||||
|
align = 1
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
[connection signal="pressed" from="Menu Principal/ButtonStart" to="." method="_on_ButtonStart_pressed"]
|
||||||
|
[connection signal="pressed" from="Menu Principal/ButtonSettings" to="." method="_on_ButtonSettings_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonFacile" to="." method="_on_ButtonFacile_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonNormal" to="." method="_on_ButtonNormal_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonDifficile" to="." method="_on_ButtonDifficile_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonBackToMenu" to="." method="_on_ButtonBackToMenu_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonMusiqueON" to="." method="_on_ButtonMusiqueON_pressed"]
|
||||||
|
[connection signal="pressed" from="Settings/ButtonMusiqueOFF" to="." method="_on_ButtonMusiqueOFF_pressed"]
|
||||||
|
[connection signal="timeout" from="TimerMessage" to="." method="_on_TimerMessage_timeout"]
|
94
GODOT/Player.gd
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
extends Area2D
|
||||||
|
|
||||||
|
export var vitesse = 400 # vitesse en pixel/sec
|
||||||
|
var screen_size # taille de la fenetre
|
||||||
|
signal perdu
|
||||||
|
signal piece
|
||||||
|
signal touche
|
||||||
|
var vie = 3
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
screen_size = get_viewport_rect().size
|
||||||
|
hide()
|
||||||
|
|
||||||
|
func _process(delta):
|
||||||
|
var velocity = Vector2(0, 0)
|
||||||
|
var animated = false
|
||||||
|
|
||||||
|
# animation diagonales
|
||||||
|
|
||||||
|
if Input.is_action_pressed('ui_up') and (Input.is_action_pressed('ui_left') or Input.is_action_pressed('ui_right')):
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("haut-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("haut")
|
||||||
|
animated = true
|
||||||
|
if Input.is_action_pressed('ui_down') and (Input.is_action_pressed('ui_left') or Input.is_action_pressed('ui_right')):
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("bas-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("bas")
|
||||||
|
animated = true
|
||||||
|
|
||||||
|
# déplacement et animation gauche droite haut bas
|
||||||
|
|
||||||
|
if Input.is_action_pressed("ui_right"):
|
||||||
|
velocity.x += 1
|
||||||
|
if not animated:
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("droite-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("droite")
|
||||||
|
if Input.is_action_pressed("ui_left"):
|
||||||
|
velocity.x -= 1
|
||||||
|
if not animated:
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("gauche-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("gauche")
|
||||||
|
if Input.is_action_pressed("ui_down"):
|
||||||
|
velocity.y += 1
|
||||||
|
if not animated:
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("bas-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("bas")
|
||||||
|
if Input.is_action_pressed("ui_up"):
|
||||||
|
velocity.y -= 1
|
||||||
|
if not animated:
|
||||||
|
if $TimerIsostasieVie.time_left > 0:
|
||||||
|
$AnimatedSprite.play("haut-hit")
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.play("haut")
|
||||||
|
|
||||||
|
# vitesse indentique en diagonale
|
||||||
|
if velocity.length() > 0:
|
||||||
|
velocity = velocity.normalized() * vitesse
|
||||||
|
else:
|
||||||
|
$AnimatedSprite.set_frame(0)
|
||||||
|
$AnimatedSprite.stop()
|
||||||
|
|
||||||
|
position += velocity * delta
|
||||||
|
position.x = clamp(position.x, 0, screen_size.x)
|
||||||
|
position.y = clamp(position.y, 0, screen_size.y)
|
||||||
|
|
||||||
|
func _on_Joueur_body_entered(body): # _body au lieu de body parce que on ne l'utilise pas
|
||||||
|
if "Ennemi" in str(body.name):
|
||||||
|
emit_signal("touche")
|
||||||
|
if not $TimerIsostasieVie.time_left > 0:
|
||||||
|
vie -= 1
|
||||||
|
$TimerIsostasieVie.start()
|
||||||
|
if vie < 1:
|
||||||
|
emit_signal("perdu")
|
||||||
|
hide()
|
||||||
|
$CollisionShape2D.set_deferred("disabled", true)
|
||||||
|
else:
|
||||||
|
emit_signal("piece")
|
||||||
|
|
||||||
|
func start(pos):
|
||||||
|
position = pos
|
||||||
|
$AnimatedSprite.play("bas")
|
||||||
|
$AnimatedSprite.stop()
|
||||||
|
show()
|
||||||
|
vie = 3
|
||||||
|
$CollisionShape2D.disabled = false
|
157
GODOT/Player.tscn
Normal file
|
@ -0,0 +1,157 @@
|
||||||
|
[gd_scene load_steps=32 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://imgs/ninja_haut.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://imgs/ninja_bas.png" type="Texture" id=2]
|
||||||
|
[ext_resource path="res://imgs/ninja_bas-hit.png" type="Texture" id=3]
|
||||||
|
[ext_resource path="res://imgs/ninja_haut-hit.png" type="Texture" id=4]
|
||||||
|
[ext_resource path="res://Player.gd" type="Script" id=5]
|
||||||
|
[ext_resource path="res://imgs/ninja_right.png" type="Texture" id=6]
|
||||||
|
[ext_resource path="res://imgs/ninja_left-hit.png" type="Texture" id=7]
|
||||||
|
[ext_resource path="res://imgs/ninja_right-hit.png" type="Texture" id=8]
|
||||||
|
[ext_resource path="res://imgs/ninja_left.png" type="Texture" id=11]
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=1]
|
||||||
|
atlas = ExtResource( 6 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=2]
|
||||||
|
atlas = ExtResource( 6 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=3]
|
||||||
|
atlas = ExtResource( 11 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=4]
|
||||||
|
atlas = ExtResource( 11 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=5]
|
||||||
|
atlas = ExtResource( 7 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=6]
|
||||||
|
atlas = ExtResource( 11 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=7]
|
||||||
|
atlas = ExtResource( 8 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=8]
|
||||||
|
atlas = ExtResource( 6 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=9]
|
||||||
|
atlas = ExtResource( 2 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=10]
|
||||||
|
atlas = ExtResource( 2 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=11]
|
||||||
|
atlas = ExtResource( 2 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=12]
|
||||||
|
atlas = ExtResource( 4 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=13]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=14]
|
||||||
|
atlas = ExtResource( 4 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=15]
|
||||||
|
atlas = ExtResource( 3 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=16]
|
||||||
|
atlas = ExtResource( 2 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=17]
|
||||||
|
atlas = ExtResource( 3 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=18]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 0, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=19]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 32, 0, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="AtlasTexture" id=20]
|
||||||
|
atlas = ExtResource( 1 )
|
||||||
|
region = Rect2( 0, 32, 32, 32 )
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id=21]
|
||||||
|
animations = [ {
|
||||||
|
"frames": [ SubResource( 1 ), SubResource( 2 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "droite",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 3 ), SubResource( 4 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "gauche",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 5 ), SubResource( 6 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "gauche-hit",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 7 ), SubResource( 8 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "droite-hit",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 9 ), SubResource( 10 ), SubResource( 11 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "bas",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 12 ), SubResource( 13 ), SubResource( 14 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "haut-hit",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 15 ), SubResource( 16 ), SubResource( 17 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "bas-hit",
|
||||||
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ SubResource( 18 ), SubResource( 19 ), SubResource( 20 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "haut",
|
||||||
|
"speed": 5.0
|
||||||
|
} ]
|
||||||
|
|
||||||
|
[sub_resource type="RectangleShape2D" id=22]
|
||||||
|
extents = Vector2( 21.5745, 33.778 )
|
||||||
|
|
||||||
|
[node name="Joueur" type="Area2D"]
|
||||||
|
position = Vector2( 9.91069, 8.96681 )
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_group_": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
|
||||||
|
scale = Vector2( 2.5, 2.5 )
|
||||||
|
frames = SubResource( 21 )
|
||||||
|
animation = "haut-hit"
|
||||||
|
|
||||||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
position = Vector2( -3.6604, 6.29072 )
|
||||||
|
shape = SubResource( 22 )
|
||||||
|
|
||||||
|
[node name="TimerIsostasieVie" type="Timer" parent="."]
|
||||||
|
one_shot = true
|
||||||
|
[connection signal="body_entered" from="." to="." method="_on_Joueur_body_entered"]
|
11
GODOT/Vie.gd
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
extends HBoxContainer
|
||||||
|
|
||||||
|
var coeur_plein = preload("res://imgs/coeur.png")
|
||||||
|
var coeur_vide = preload("res://imgs/coeur_vide.png")
|
||||||
|
|
||||||
|
func update_health(value):
|
||||||
|
for i in get_child_count():
|
||||||
|
if value > i:
|
||||||
|
get_child(i).texture = coeur_plein
|
||||||
|
else:
|
||||||
|
get_child(i).texture = coeur_vide
|
34
GODOT/Vie.tscn
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[gd_scene load_steps=3 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://Vie.gd" type="Script" id=1]
|
||||||
|
[ext_resource path="res://imgs/coeur.png" type="Texture" id=2]
|
||||||
|
|
||||||
|
[node name="Vie" type="HBoxContainer"]
|
||||||
|
margin_right = 37.0
|
||||||
|
margin_bottom = 9.0
|
||||||
|
rect_scale = Vector2( 4, 4 )
|
||||||
|
custom_constants/separation = 5
|
||||||
|
script = ExtResource( 1 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="1" type="TextureRect" parent="."]
|
||||||
|
margin_right = 9.0
|
||||||
|
margin_bottom = 9.0
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
stretch_mode = 3
|
||||||
|
|
||||||
|
[node name="2" type="TextureRect" parent="."]
|
||||||
|
margin_left = 14.0
|
||||||
|
margin_right = 23.0
|
||||||
|
margin_bottom = 9.0
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
stretch_mode = 3
|
||||||
|
|
||||||
|
[node name="3" type="TextureRect" parent="."]
|
||||||
|
margin_left = 28.0
|
||||||
|
margin_right = 37.0
|
||||||
|
margin_bottom = 9.0
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
stretch_mode = 3
|
7
GODOT/default_env.tres
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
[gd_resource type="Environment" load_steps=2 format=2]
|
||||||
|
|
||||||
|
[sub_resource type="ProceduralSky" id=1]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
background_mode = 2
|
||||||
|
background_sky = SubResource( 1 )
|
42
GODOT/export_presets.cfg
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
[preset.0]
|
||||||
|
|
||||||
|
name="Windows Desktop"
|
||||||
|
platform="Windows Desktop"
|
||||||
|
runnable=true
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="../../../../../../Desktop/.exe"
|
||||||
|
patch_list=PoolStringArray( )
|
||||||
|
script_export_mode=1
|
||||||
|
script_encryption_key=""
|
||||||
|
|
||||||
|
[preset.0.options]
|
||||||
|
|
||||||
|
texture_format/bptc=false
|
||||||
|
texture_format/s3tc=true
|
||||||
|
texture_format/etc=false
|
||||||
|
texture_format/etc2=false
|
||||||
|
texture_format/no_bptc_fallbacks=true
|
||||||
|
binary_format/64_bits=true
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
custom_template/release=""
|
||||||
|
custom_template/debug=""
|
||||||
|
codesign/enable=false
|
||||||
|
codesign/identity_type=0
|
||||||
|
codesign/identity=""
|
||||||
|
codesign/password=""
|
||||||
|
codesign/timestamp=true
|
||||||
|
codesign/timestamp_server_url=""
|
||||||
|
codesign/digest_algorithm=1
|
||||||
|
codesign/description=""
|
||||||
|
codesign/custom_options=PoolStringArray( )
|
||||||
|
application/icon=""
|
||||||
|
application/file_version="0.0.1"
|
||||||
|
application/product_version="0.0.1"
|
||||||
|
application/company_name="EzProduction"
|
||||||
|
application/product_name="Dodge"
|
||||||
|
application/file_description=""
|
||||||
|
application/copyright=""
|
||||||
|
application/trademarks=""
|
BIN
GODOT/fonts/Marshmallow.ttf
Normal file
15
GODOT/fonts/Read me.txt
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
Note of the author
|
||||||
|
====================
|
||||||
|
|
||||||
|
This demo font is for PERSONAL USE ONLY!
|
||||||
|
|
||||||
|
But any donation are very appreciated.
|
||||||
|
|
||||||
|
Paypal account for donation : https://www.paypal.me/Arvanfatwa
|
||||||
|
|
||||||
|
Link to purchase full version and commercial please contact me at
|
||||||
|
fatwaarvan@gmail.com
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Thank you.
|
BIN
GODOT/icons/icon.icns
Normal file
BIN
GODOT/icons/icon.ico
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
GODOT/icons/icon.png
Normal file
After Width: | Height: | Size: 880 B |
34
GODOT/icons/icon.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/icon.png-66e56a551f174bdc993eb27d415a6710.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://icons/icon.png"
|
||||||
|
dest_files=[ "res://.import/icon.png-66e56a551f174bdc993eb27d415a6710.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=true
|
||||||
|
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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/background.png
Normal file
After Width: | Height: | Size: 76 KiB |
34
GODOT/imgs/background.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/background.png-ac2b3d6ead6f2b7a2fa89ae4e966e394.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/background.png"
|
||||||
|
dest_files=[ "res://.import/background.png-ac2b3d6ead6f2b7a2fa89ae4e966e394.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/background_ig.png
Normal file
After Width: | Height: | Size: 17 KiB |
34
GODOT/imgs/background_ig.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/background_ig.png-6f355b8dd541fcae2d6cc09d34dc4c0a.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/background_ig.png"
|
||||||
|
dest_files=[ "res://.import/background_ig.png-6f355b8dd541fcae2d6cc09d34dc4c0a.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/coeur.png
Normal file
After Width: | Height: | Size: 9.2 KiB |
34
GODOT/imgs/coeur.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/coeur.png-e0afd76f1df6030fd07be3164576d362.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/coeur.png"
|
||||||
|
dest_files=[ "res://.import/coeur.png-e0afd76f1df6030fd07be3164576d362.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/coeur_vide.png
Normal file
After Width: | Height: | Size: 7.9 KiB |
34
GODOT/imgs/coeur_vide.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/coeur_vide.png-c9103c28f168f22cdbda1cdbddb92b5e.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/coeur_vide.png"
|
||||||
|
dest_files=[ "res://.import/coeur_vide.png-c9103c28f168f22cdbda1cdbddb92b5e.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/coin.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
34
GODOT/imgs/coin.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/coin.png-e481ee7f6da4d288b61f580abea9f6b6.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/coin.png"
|
||||||
|
dest_files=[ "res://.import/coin.png-e481ee7f6da4d288b61f580abea9f6b6.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/fantome.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
34
GODOT/imgs/fantome.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/fantome.png-2d4c7920e6fc299e819bd9d9ddf199f2.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/fantome.png"
|
||||||
|
dest_files=[ "res://.import/fantome.png-2d4c7920e6fc299e819bd9d9ddf199f2.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_bas-hit.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_bas-hit.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_bas-hit.png-e377fd73ee2ca9301134ebbba8dc69ff.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_bas-hit.png"
|
||||||
|
dest_files=[ "res://.import/ninja_bas-hit.png-e377fd73ee2ca9301134ebbba8dc69ff.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_bas.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_bas.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_bas.png-c7e0798a31982a4b895c6b9636fb0d4a.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_bas.png"
|
||||||
|
dest_files=[ "res://.import/ninja_bas.png-c7e0798a31982a4b895c6b9636fb0d4a.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_haut-hit.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_haut-hit.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_haut-hit.png-1268919f42034933917e9aebf38e518f.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_haut-hit.png"
|
||||||
|
dest_files=[ "res://.import/ninja_haut-hit.png-1268919f42034933917e9aebf38e518f.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_haut.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_haut.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_haut.png-1797c52d57bcf5485738fe18cf9e433a.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_haut.png"
|
||||||
|
dest_files=[ "res://.import/ninja_haut.png-1797c52d57bcf5485738fe18cf9e433a.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_left-hit.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_left-hit.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_left-hit.png-94f5991740df93d480f6de0f8234f6af.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_left-hit.png"
|
||||||
|
dest_files=[ "res://.import/ninja_left-hit.png-94f5991740df93d480f6de0f8234f6af.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_left.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_left.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_left.png-4a5cc10984b8f27389aad21646397019.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_left.png"
|
||||||
|
dest_files=[ "res://.import/ninja_left.png-4a5cc10984b8f27389aad21646397019.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_right-hit.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_right-hit.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_right-hit.png-8c8bc849d19476a8fd6ef0f66f2d2c47.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_right-hit.png"
|
||||||
|
dest_files=[ "res://.import/ninja_right-hit.png-8c8bc849d19476a8fd6ef0f66f2d2c47.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/ninja_right.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
GODOT/imgs/ninja_right.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/ninja_right.png-0614ba6a1433a5d149da3dc63df5cbbd.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/ninja_right.png"
|
||||||
|
dest_files=[ "res://.import/ninja_right.png-0614ba6a1433a5d149da3dc63df5cbbd.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=true
|
||||||
|
svg/scale=1.0
|
BIN
GODOT/imgs/oeil.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
34
GODOT/imgs/oeil.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/oeil.png-97044707c61e16bfb1b811d598952dd0.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://imgs/oeil.png"
|
||||||
|
dest_files=[ "res://.import/oeil.png-97044707c61e16bfb1b811d598952dd0.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=true
|
||||||
|
svg/scale=1.0
|
35
GODOT/project.godot
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
; Engine configuration file.
|
||||||
|
; It's best edited using the editor UI and not directly,
|
||||||
|
; since the parameters that go here are not all obvious.
|
||||||
|
;
|
||||||
|
; Format:
|
||||||
|
; [section] ; section goes between []
|
||||||
|
; param=value ; assign values to parameters
|
||||||
|
|
||||||
|
config_version=4
|
||||||
|
|
||||||
|
_global_script_classes=[ ]
|
||||||
|
_global_script_class_icons={
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[application]
|
||||||
|
|
||||||
|
config/name="Dodge"
|
||||||
|
config/description="Le jeu où il faut tout éviter pour survivre"
|
||||||
|
run/main_scene="res://Main.tscn"
|
||||||
|
config/icon="res://icons/icon.png"
|
||||||
|
config/macos_native_icon="res://icons/icon.icns"
|
||||||
|
config/windows_native_icon="res://icons/icon.ico"
|
||||||
|
|
||||||
|
[display]
|
||||||
|
|
||||||
|
window/size/width=480
|
||||||
|
window/size/height=720
|
||||||
|
window/size/resizable=false
|
||||||
|
window/stretch/mode="2d"
|
||||||
|
window/stretch/aspect="keep"
|
||||||
|
|
||||||
|
[rendering]
|
||||||
|
|
||||||
|
environment/default_environment="res://default_env.tres"
|
1
GODOT/settings_difficulty.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
0.2
|
1
GODOT/settings_music.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
on
|
BIN
GODOT/sounds/gameover.wav
Normal file
21
GODOT/sounds/gameover.wav.import
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamSample"
|
||||||
|
path="res://.import/gameover.wav-720d570044f8503c6b8dd433995b9cf1.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://sounds/gameover.wav"
|
||||||
|
dest_files=[ "res://.import/gameover.wav-720d570044f8503c6b8dd433995b9cf1.sample" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop=false
|
||||||
|
compress/mode=0
|
BIN
GODOT/sounds/music_background.wav
Normal file
21
GODOT/sounds/music_background.wav.import
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamSample"
|
||||||
|
path="res://.import/music_background.wav-a8abe5557a16c457fb960c71ce33c7f9.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://sounds/music_background.wav"
|
||||||
|
dest_files=[ "res://.import/music_background.wav-a8abe5557a16c457fb960c71ce33c7f9.sample" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop=true
|
||||||
|
compress/mode=0
|
BIN
GODOT/sounds/pickupcoin.wav
Normal file
21
GODOT/sounds/pickupcoin.wav.import
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamSample"
|
||||||
|
path="res://.import/pickupcoin.wav-e9d66579ad1109c48a07345be1a471eb.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://sounds/pickupcoin.wav"
|
||||||
|
dest_files=[ "res://.import/pickupcoin.wav-e9d66579ad1109c48a07345be1a471eb.sample" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop=false
|
||||||
|
compress/mode=0
|