mirror of
https://github.com/kristoferssolo/FuncIt.git
synced 2025-10-21 19:30:35 +00:00
[Minimal] Finishing touches to the basic
This commit is contained in:
parent
bf4cc0c9cd
commit
a040a8e433
@ -13,7 +13,6 @@ var coreRay = {}
|
|||||||
var desiredLocation = Vector2(0,0)
|
var desiredLocation = Vector2(0,0)
|
||||||
var movementVector = Vector2(0,0)
|
var movementVector = Vector2(0,0)
|
||||||
var weightVector = Vector2(0,0)
|
var weightVector = Vector2(0,0)
|
||||||
var interacting = false
|
|
||||||
var interactionRays = []
|
var interactionRays = []
|
||||||
var degreeTracker
|
var degreeTracker
|
||||||
|
|
||||||
@ -28,6 +27,8 @@ var time = 0
|
|||||||
var rotationAmount = 0
|
var rotationAmount = 0
|
||||||
var rand_generate = RandomNumberGenerator.new()
|
var rand_generate = RandomNumberGenerator.new()
|
||||||
|
|
||||||
|
var timer = 15
|
||||||
|
|
||||||
export(int, "Passive", "Friendly", "Agressive") var Mode
|
export(int, "Passive", "Friendly", "Agressive") var Mode
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
@ -36,13 +37,19 @@ func _ready():
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
func _physics_process(delta):
|
func _physics_process(delta):
|
||||||
time += delta#
|
time += delta
|
||||||
|
timer += delta
|
||||||
rand_generate.randomize()
|
rand_generate.randomize()
|
||||||
get_interaction()
|
get_interaction()
|
||||||
if interactionRays[0]["interacted"]:
|
if interactionRays[0]["interacted"]:
|
||||||
if liftSpeed > 0: liftSpeed = move_toward(liftSpeed, 0, deccelerationSpeed)
|
if liftSpeed > 0: liftSpeed = move_toward(liftSpeed, 0, deccelerationSpeed)
|
||||||
elif abs(position.y - desiredLocation.y) > 10 and not interacting: liftSpeed -= accelerationSpeed
|
elif position.y - desiredLocation.y > 1:
|
||||||
else: liftSpeed += GRAVITY
|
liftSpeed -= accelerationSpeed
|
||||||
|
elif position.y - desiredLocation.y < -1:
|
||||||
|
liftSpeed += GRAVITY
|
||||||
|
for ray in interactionRays:
|
||||||
|
if ray["interacted"]:
|
||||||
|
liftSpeed += -ray["end"].normalized().y * maxSpeed
|
||||||
liftSpeed = clamp(liftSpeed, -maxSpeed, maxSpeed)
|
liftSpeed = clamp(liftSpeed, -maxSpeed, maxSpeed)
|
||||||
move_and_slide(Vector2(0,liftSpeed))
|
move_and_slide(Vector2(0,liftSpeed))
|
||||||
if Mode == 0:
|
if Mode == 0:
|
||||||
@ -54,6 +61,7 @@ func _physics_process(delta):
|
|||||||
$TsBotSpriteWeaponOn.hide()
|
$TsBotSpriteWeaponOn.hide()
|
||||||
$TsBotSpriteWeaponOff.show()
|
$TsBotSpriteWeaponOff.show()
|
||||||
elif Mode == 2:
|
elif Mode == 2:
|
||||||
|
if fireRate < 20: fireRate = 5*fireRate
|
||||||
$ts_bot_sprite.play("agressive_idle")
|
$ts_bot_sprite.play("agressive_idle")
|
||||||
$TsBotSpriteWeaponOn.show()
|
$TsBotSpriteWeaponOn.show()
|
||||||
$TsBotSpriteWeaponOff.hide()
|
$TsBotSpriteWeaponOff.hide()
|
||||||
@ -64,17 +72,16 @@ func _physics_process(delta):
|
|||||||
time = 0
|
time = 0
|
||||||
|
|
||||||
func get_interaction():
|
func get_interaction():
|
||||||
print(interacting)
|
|
||||||
degreeTracker = 0
|
degreeTracker = 0
|
||||||
interactionRays = []
|
interactionRays = []
|
||||||
worldSpace2d = get_world_2d().direct_space_state
|
worldSpace2d = get_world_2d().direct_space_state
|
||||||
interacting = false
|
|
||||||
while degreeTracker < 360 + degreeStep:
|
while degreeTracker < 360 + degreeStep:
|
||||||
interactionRay = worldSpace2d.intersect_ray(startVector, Vector2(0,maxRay).rotated(deg2rad(degreeTracker)) + global_position, [self])
|
interactionRay = worldSpace2d.intersect_ray(startVector, Vector2(0,maxRay).rotated(deg2rad(degreeTracker)) + global_position, [self])
|
||||||
var interacted = false
|
var interacted = false
|
||||||
if "position" in interactionRay:
|
if "position" in interactionRay and interactionRay["collider"].is_in_group("Player"):
|
||||||
interacted = true
|
interacted = true
|
||||||
Mode += 1
|
if timer > 15:
|
||||||
interacting = true
|
Mode += 1
|
||||||
|
timer = 0
|
||||||
interactionRays.append({"start": startVector, "end": Vector2(0,maxRay).rotated(deg2rad(degreeTracker)) + global_position, "degrees": degreeTracker,"ray": interactionRay, "interacted": interacted})
|
interactionRays.append({"start": startVector, "end": Vector2(0,maxRay).rotated(deg2rad(degreeTracker)) + global_position, "degrees": degreeTracker,"ray": interactionRay, "interacted": interacted})
|
||||||
degreeTracker += degreeStep
|
degreeTracker += degreeStep
|
||||||
|
|||||||
@ -49,11 +49,6 @@ animations = [ {
|
|||||||
"name": "idle",
|
"name": "idle",
|
||||||
"speed": 12.0
|
"speed": 12.0
|
||||||
}, {
|
}, {
|
||||||
"frames": [ ExtResource( 17 ), ExtResource( 34 ), ExtResource( 28 ), ExtResource( 26 ), ExtResource( 24 ), ExtResource( 27 ), ExtResource( 36 ) ],
|
|
||||||
"loop": false,
|
|
||||||
"name": "transition_down",
|
|
||||||
"speed": 24.0
|
|
||||||
}, {
|
|
||||||
"frames": [ ExtResource( 30 ), ExtResource( 42 ), ExtResource( 16 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 31 ), ExtResource( 21 ), ExtResource( 32 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 22 ), ExtResource( 23 ), ExtResource( 33 ) ],
|
"frames": [ ExtResource( 30 ), ExtResource( 42 ), ExtResource( 16 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 31 ), ExtResource( 21 ), ExtResource( 32 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 22 ), ExtResource( 23 ), ExtResource( 33 ) ],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": "idle_down",
|
"name": "idle_down",
|
||||||
@ -63,6 +58,11 @@ animations = [ {
|
|||||||
"loop": false,
|
"loop": false,
|
||||||
"name": "transition_up",
|
"name": "transition_up",
|
||||||
"speed": 24.0
|
"speed": 24.0
|
||||||
|
}, {
|
||||||
|
"frames": [ ExtResource( 17 ), ExtResource( 34 ), ExtResource( 28 ), ExtResource( 26 ), ExtResource( 24 ), ExtResource( 27 ), ExtResource( 36 ) ],
|
||||||
|
"loop": false,
|
||||||
|
"name": "transition_down",
|
||||||
|
"speed": 24.0
|
||||||
} ]
|
} ]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=2]
|
[sub_resource type="RectangleShape2D" id=2]
|
||||||
@ -76,7 +76,7 @@ position = Vector2( -3.36365, 0 )
|
|||||||
scale = Vector2( 0.75, 0.75 )
|
scale = Vector2( 0.75, 0.75 )
|
||||||
frames = SubResource( 1 )
|
frames = SubResource( 1 )
|
||||||
animation = "idle"
|
animation = "idle"
|
||||||
frame = 8
|
frame = 12
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="trinity_site_level_layout-level_design_z-index_0_grass_type-2" type="Sprite" parent="."]
|
[node name="trinity_site_level_layout-level_design_z-index_0_grass_type-2" type="Sprite" parent="."]
|
||||||
|
|||||||
@ -21,15 +21,15 @@ animations = [ {
|
|||||||
"name": "agressive_idle",
|
"name": "agressive_idle",
|
||||||
"speed": 5.0
|
"speed": 5.0
|
||||||
}, {
|
}, {
|
||||||
"frames": [ ExtResource( 3 ) ],
|
|
||||||
"loop": true,
|
|
||||||
"name": "passive_idle",
|
|
||||||
"speed": 5.0
|
|
||||||
}, {
|
|
||||||
"frames": [ ExtResource( 4 ) ],
|
"frames": [ ExtResource( 4 ) ],
|
||||||
"loop": true,
|
"loop": true,
|
||||||
"name": "friendly_idle",
|
"name": "friendly_idle",
|
||||||
"speed": 5.0
|
"speed": 5.0
|
||||||
|
}, {
|
||||||
|
"frames": [ ExtResource( 3 ) ],
|
||||||
|
"loop": true,
|
||||||
|
"name": "passive_idle",
|
||||||
|
"speed": 5.0
|
||||||
} ]
|
} ]
|
||||||
|
|
||||||
[node name="ts_bot" type="KinematicBody2D"]
|
[node name="ts_bot" type="KinematicBody2D"]
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user