Implemented new icons (sizing not correct) , renamed trap types, and created colored pawns)
This commit is contained in:
40
external/contain-icon.png.import
vendored
Normal file
40
external/contain-icon.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cg4fu3fa248cm"
|
||||||
|
path="res://.godot/imported/contain-icon.png-a3e48c385316cd8572a89a3e09b9d50c.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/contain-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/contain-icon.png-a3e48c385316cd8572a89a3e09b9d50c.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
41
external/destroy-icon.png.import
vendored
Normal file
41
external/destroy-icon.png.import
vendored
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://u12dmhohea1g"
|
||||||
|
path.s3tc="res://.godot/imported/destroy-icon.png-9ceefbafae80256ab845a59897063ca8.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/destroy-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/destroy-icon.png-9ceefbafae80256ab845a59897063ca8.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
40
external/infect-icon.png.import
vendored
Normal file
40
external/infect-icon.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bbls00lwa4y5n"
|
||||||
|
path="res://.godot/imported/infect-icon.png-8db1aa042afba559f74a0df4c022ad79.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/infect-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/infect-icon.png-8db1aa042afba559f74a0df4c022ad79.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
40
external/purge-icon.png.import
vendored
Normal file
40
external/purge-icon.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://pdtmy6qryxb2"
|
||||||
|
path="res://.godot/imported/purge-icon.png-19a8010519a7938e0198b676b1cc9c83.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/purge-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/purge-icon.png-19a8010519a7938e0198b676b1cc9c83.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
40
external/redirect-icon.png.import
vendored
Normal file
40
external/redirect-icon.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://duwob32i2ccsk"
|
||||||
|
path="res://.godot/imported/redirect-icon.png-fe9a5e1b9c27a2ed13e5cd77575b5b34.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/redirect-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/redirect-icon.png-fe9a5e1b9c27a2ed13e5cd77575b5b34.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
40
external/trigger-icon.png.import
vendored
Normal file
40
external/trigger-icon.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://xomk6sb0cnfy"
|
||||||
|
path="res://.godot/imported/trigger-icon.png-28f3bc3b679f225965e92f3adaf23e10.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://external/trigger-icon.png"
|
||||||
|
dest_files=["res://.godot/imported/trigger-icon.png-28f3bc3b679f225965e92f3adaf23e10.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
@@ -1,36 +1,36 @@
|
|||||||
class_name Hack extends Area3D
|
class_name Hack extends Area3D
|
||||||
|
|
||||||
enum Type{
|
enum Type{
|
||||||
BOMB,
|
DESTROY,
|
||||||
MINE,
|
PURGE,
|
||||||
GAS,
|
INFECT,
|
||||||
FORCE_PANEL,
|
REDIRECT,
|
||||||
SWITCH,
|
TRIGGER,
|
||||||
PITFALL
|
CONTAIN
|
||||||
}
|
}
|
||||||
|
|
||||||
const range_shapes : Dictionary = {
|
const range_shapes : Dictionary = {
|
||||||
Hack.Type.BOMB : Vector3(4.25,3,4.25),
|
Hack.Type.DESTROY : Vector3(4.25,3,4.25),
|
||||||
Hack.Type.GAS : Vector3(1,1,1),
|
Hack.Type.INFECT : Vector3(1,1,1),
|
||||||
Hack.Type.PITFALL : Vector3(1,1,1),
|
Hack.Type.CONTAIN : Vector3(1,1,1),
|
||||||
Hack.Type.FORCE_PANEL : Vector3(1,1,1),
|
Hack.Type.REDIRECT : Vector3(1,1,1),
|
||||||
Hack.Type.SWITCH : Vector3(3,1,3),
|
Hack.Type.TRIGGER : Vector3(3,1,3),
|
||||||
Hack.Type.MINE : Vector3(4.25,3,4.25),
|
Hack.Type.PURGE : Vector3(4.25,3,4.25),
|
||||||
}
|
}
|
||||||
const hack_icons : Dictionary = {
|
const hack_icons : Dictionary = {
|
||||||
Hack.Type.BOMB : preload("res://visuals/images/icons/t-bomb.png"),
|
Hack.Type.DESTROY : preload("res://external/destroy-icon.png"),
|
||||||
Hack.Type.GAS : preload("res://visuals/images/icons/t-gas.png"),
|
Hack.Type.INFECT : preload("res://external/infect-icon.png"),
|
||||||
Hack.Type.PITFALL : preload("res://visuals/images/icons/t-pitfall.png"),
|
Hack.Type.CONTAIN : preload("res://external/contain-icon.png"),
|
||||||
Hack.Type.FORCE_PANEL : preload("res://visuals/images/icons/t-force_panel.png"),
|
Hack.Type.REDIRECT : preload("res://external/redirect-icon.png"),
|
||||||
Hack.Type.SWITCH : preload("res://visuals/images/icons/t-switch.png"),
|
Hack.Type.TRIGGER : preload("res://external/trigger-icon.png"),
|
||||||
Hack.Type.MINE : preload("res://visuals/images/icons/t-mine.png"),
|
Hack.Type.PURGE : preload("res://external/purge-icon.png"),
|
||||||
}
|
}
|
||||||
|
|
||||||
const bomb_explosion_template = preload("res://templates/explosion.tscn")
|
const destroy_explosion_template = preload("res://templates/explosion.tscn")
|
||||||
const mine_explosion_template = preload("res://templates/explosion.tscn")
|
const purge_explosion_template = preload("res://templates/explosion.tscn")
|
||||||
const pitfall_template = preload("res://templates/pitfall.tscn")
|
const contain_template = preload("res://templates/pitfall.tscn")
|
||||||
const switch_explosion_template = preload("res://templates/explosion.tscn")
|
const trigger_explosion_template = preload("res://templates/explosion.tscn")
|
||||||
const gas_emitter_template = preload("res://templates/gas_emitter.tscn")
|
const infect_emitter_template = preload("res://templates/gas_emitter.tscn")
|
||||||
const force_activate_sound = preload("res://audio/sounds/TomWinandySFX_UI_ScifiTech_Start_06.wav")
|
const force_activate_sound = preload("res://audio/sounds/TomWinandySFX_UI_ScifiTech_Start_06.wav")
|
||||||
|
|
||||||
@onready var range_area : Area3D = %RangeArea
|
@onready var range_area : Area3D = %RangeArea
|
||||||
@@ -72,7 +72,7 @@ func _exit_tree() -> void:
|
|||||||
func setup(type : Type, direction : Vector3, hack_owner : int) -> void:
|
func setup(type : Type, direction : Vector3, hack_owner : int) -> void:
|
||||||
self.type = type
|
self.type = type
|
||||||
self.hack_owner = hack_owner
|
self.hack_owner = hack_owner
|
||||||
if type == Type.FORCE_PANEL:
|
if type == Type.REDIRECT:
|
||||||
var r : float = atan2(direction.z, direction.x)
|
var r : float = atan2(direction.z, direction.x)
|
||||||
var cardinal : float = roundi(r * 2 / PI) * PI / 2
|
var cardinal : float = roundi(r * 2 / PI) * PI / 2
|
||||||
self.direction = Vector3(cos(cardinal), 0, sin(cardinal))
|
self.direction = Vector3(cos(cardinal), 0, sin(cardinal))
|
||||||
@@ -115,15 +115,15 @@ func _ready() -> void:
|
|||||||
icon.visible = owns_hack
|
icon.visible = owns_hack
|
||||||
range_shape.size = range_shapes[type]
|
range_shape.size = range_shapes[type]
|
||||||
match(type):
|
match(type):
|
||||||
Type.BOMB:
|
Type.DESTROY:
|
||||||
damage = 15
|
damage = 15
|
||||||
Type.MINE:
|
Type.PURGE:
|
||||||
damage = 10
|
damage = 10
|
||||||
Type.SWITCH:
|
Type.TRIGGER:
|
||||||
damage = 5
|
damage = 5
|
||||||
Type.GAS:
|
Type.INFECT:
|
||||||
activation_timer.start()
|
activation_timer.start()
|
||||||
Type.FORCE_PANEL:
|
Type.REDIRECT:
|
||||||
var r : float = atan2(direction.z, -direction.x) + PI/2
|
var r : float = atan2(direction.z, -direction.x) + PI/2
|
||||||
force_strip.rotate_y(r)
|
force_strip.rotate_y(r)
|
||||||
force_strip.visible = owns_hack
|
force_strip.visible = owns_hack
|
||||||
@@ -140,29 +140,29 @@ func activate() -> void:
|
|||||||
return
|
return
|
||||||
var explode : bool = false
|
var explode : bool = false
|
||||||
match(type):
|
match(type):
|
||||||
Type.PITFALL:
|
Type.CONTAIN:
|
||||||
generate_pitfall(square)
|
generate_contain(square)
|
||||||
for body in get_overlapping_bodies():
|
for body in get_overlapping_bodies():
|
||||||
body.start_pitfall(square, 6.0)
|
body.start_pitfall(square, 6.0)
|
||||||
#Generate the circle here
|
#Generate the circle here
|
||||||
Type.FORCE_PANEL:
|
Type.REDIRECT:
|
||||||
Game.oneshot(force_activate_sound)
|
Game.oneshot(force_activate_sound)
|
||||||
for body in get_overlapping_bodies():
|
for body in get_overlapping_bodies():
|
||||||
body.fling(direction, 5.0)
|
body.fling(direction, 5.0)
|
||||||
Type.MINE:
|
Type.PURGE:
|
||||||
var exp = mine_explosion_template.instantiate()
|
var exp = purge_explosion_template.instantiate()
|
||||||
Game.level.add_vfx(exp, square)
|
Game.level.add_vfx(exp, square)
|
||||||
explode = true
|
explode = true
|
||||||
Type.SWITCH:
|
Type.TRIGGER:
|
||||||
var exp = switch_explosion_template.instantiate()
|
var exp = trigger_explosion_template.instantiate()
|
||||||
Game.level.add_vfx(exp, square)
|
Game.level.add_vfx(exp, square)
|
||||||
explode = true
|
explode = true
|
||||||
Type.BOMB:
|
Type.DESTROY:
|
||||||
var exp = bomb_explosion_template.instantiate()
|
var exp = destroy_explosion_template.instantiate()
|
||||||
Game.level.add_vfx(exp, square)
|
Game.level.add_vfx(exp, square)
|
||||||
explode = true
|
explode = true
|
||||||
Type.GAS:
|
Type.INFECT:
|
||||||
var emitter = gas_emitter_template.instantiate()
|
var emitter = infect_emitter_template.instantiate()
|
||||||
emitter.hack_owner = hack_owner
|
emitter.hack_owner = hack_owner
|
||||||
emitter.square = square
|
emitter.square = square
|
||||||
emitter.damage = 4
|
emitter.damage = 4
|
||||||
@@ -179,13 +179,13 @@ func activate() -> void:
|
|||||||
|
|
||||||
func trigger_adjacent_bombs() -> void:
|
func trigger_adjacent_bombs() -> void:
|
||||||
for hack : Hack in range_area.get_overlapping_areas():
|
for hack : Hack in range_area.get_overlapping_areas():
|
||||||
if hack.type == Type.BOMB and hack != self:
|
if hack.type == Type.DESTROY and hack != self:
|
||||||
hack.delay_trigger()
|
hack.delay_trigger()
|
||||||
|
|
||||||
func generate_pitfall(suqare : Vector3i) -> void:
|
func generate_contain(square : Vector3i) -> void:
|
||||||
var pitfall = pitfall_template.instantiate()
|
var contain = contain_template.instantiate()
|
||||||
pitfall.duration = 6.0
|
contain.duration = 6.0
|
||||||
Game.level.add_vfx(pitfall, square)
|
Game.level.add_vfx(contain, square)
|
||||||
|
|
||||||
func blast_players() -> void:
|
func blast_players() -> void:
|
||||||
for body in range_area.get_overlapping_bodies():
|
for body in range_area.get_overlapping_bodies():
|
||||||
@@ -200,7 +200,7 @@ func delay_trigger() -> void:
|
|||||||
|
|
||||||
|
|
||||||
func _on_body_entered(body: Node3D) -> void:
|
func _on_body_entered(body: Node3D) -> void:
|
||||||
if type == Type.GAS or type == Type.BOMB:
|
if type == Type.INFECT or type == Type.DESTROY:
|
||||||
return
|
return
|
||||||
|
|
||||||
if body.id == hack_owner:
|
if body.id == hack_owner:
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
class_name HackIcon extends Control
|
class_name HackIcon extends Control
|
||||||
|
|
||||||
const hack_icons : Dictionary = {
|
const hack_icons : Dictionary = {
|
||||||
Hack.Type.BOMB : preload("res://visuals/images/icons/bomb.png"),
|
Hack.Type.DESTROY : preload("res://external/destroy-icon.png"),
|
||||||
Hack.Type.GAS : preload("res://visuals/images/icons/gas.png"),
|
Hack.Type.INFECT : preload("res://external/infect-icon.png"),
|
||||||
Hack.Type.PITFALL : preload("res://visuals/images/icons/pitfall.png"),
|
Hack.Type.CONTAIN : preload("res://external/contain-icon.png"),
|
||||||
Hack.Type.FORCE_PANEL : preload("res://visuals/images/icons/force_panel.png"),
|
Hack.Type.REDIRECT : preload("res://external/redirect-icon.png"),
|
||||||
Hack.Type.SWITCH : preload("res://visuals/images/icons/switch.png"),
|
Hack.Type.TRIGGER : preload("res://external/trigger-icon.png"),
|
||||||
Hack.Type.MINE : preload("res://visuals/images/icons/mine.png"),
|
Hack.Type.PURGE : preload("res://external/purge-icon.png"),
|
||||||
}
|
}
|
||||||
|
|
||||||
@onready var icon_image : TextureRect = %Icon
|
@onready var icon_image : TextureRect = %Icon
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ func _ready() -> void:
|
|||||||
Game.level = self
|
Game.level = self
|
||||||
if Game.mode == Game.Modes.STORY:
|
if Game.mode == Game.Modes.STORY:
|
||||||
setup()
|
setup()
|
||||||
add_level_hack.call_deferred(Hack.Type.MINE, Vector3.ZERO, Vector3i(-2,2,0))
|
add_level_hack.call_deferred(Hack.Type.PURGE, Vector3.ZERO, Vector3i(-2,2,0))
|
||||||
|
|
||||||
func setup() -> void:
|
func setup() -> void:
|
||||||
if Multiplayer.is_host():
|
if Multiplayer.is_host():
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ func _physics_process(delta: float) -> void:
|
|||||||
velocity = speed * dir
|
velocity = speed * dir
|
||||||
if is_poisoned():
|
if is_poisoned():
|
||||||
velocity *= 0.5
|
velocity *= 0.5
|
||||||
if detecting:
|
if is_crouching():
|
||||||
velocity *= .33
|
velocity *= .33
|
||||||
velocity.y = y
|
velocity.y = y
|
||||||
if !detecting:
|
if !detecting:
|
||||||
@@ -560,7 +560,7 @@ func _on_hack_activated(type : Hack.Type) -> void:
|
|||||||
func detonate() -> void:
|
func detonate() -> void:
|
||||||
var switch_list = []
|
var switch_list = []
|
||||||
for hack : Hack in Game.level.hacks.values():
|
for hack : Hack in Game.level.hacks.values():
|
||||||
if hack.type == Hack.Type.SWITCH and hack.hack_owner == id:
|
if hack.type == Hack.Type.TRIGGER and hack.hack_owner == id:
|
||||||
switch_list.append(hack)
|
switch_list.append(hack)
|
||||||
detonate_sound.play()
|
detonate_sound.play()
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[gd_scene load_steps=13 format=4 uid="uid://bk3yqawritfnj"]
|
[gd_scene load_steps=13 format=4 uid="uid://bk3yqawritfnj"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://yjsgte3x7jjw" path="res://scripts/hack.gd" id="1_6h4aj"]
|
[ext_resource type="Script" uid="uid://yjsgte3x7jjw" path="res://scripts/hack.gd" id="1_6h4aj"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cmlp8tn6mnbd" path="res://visuals/images/icons/t-bomb.png" id="3_mxvh5"]
|
[ext_resource type="Texture2D" uid="uid://u12dmhohea1g" path="res://external/destroy-icon.png" id="2_oyohn"]
|
||||||
[ext_resource type="Shader" uid="uid://c3fo17afoeh3v" path="res://hack.gdshader" id="4_mxvh5"]
|
[ext_resource type="Shader" uid="uid://c3fo17afoeh3v" path="res://hack.gdshader" id="4_mxvh5"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cm288pisiir7v" path="res://visuals/images/force_panel_strip.png" id="4_oj6ox"]
|
[ext_resource type="Texture2D" uid="uid://cm288pisiir7v" path="res://visuals/images/force_panel_strip.png" id="4_oj6ox"]
|
||||||
[ext_resource type="Material" uid="uid://csslbdbpj3gpc" path="res://models/material_0.tres" id="5_b2s8y"]
|
[ext_resource type="Material" uid="uid://csslbdbpj3gpc" path="res://models/material_0.tres" id="5_b2s8y"]
|
||||||
@@ -92,11 +92,11 @@ shape = SubResource("BoxShape3D_dw7u0")
|
|||||||
|
|
||||||
[node name="Icon" type="Sprite3D" parent="."]
|
[node name="Icon" type="Sprite3D" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0.17676345, 0.06314404)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17676345, 0.06314404)
|
||||||
pixel_size = 0.0075
|
pixel_size = 0.0107
|
||||||
axis = 1
|
axis = 1
|
||||||
double_sided = false
|
double_sided = false
|
||||||
texture = ExtResource("3_mxvh5")
|
texture = ExtResource("2_oyohn")
|
||||||
|
|
||||||
[node name="RevealTimer" type="Timer" parent="."]
|
[node name="RevealTimer" type="Timer" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
19993
templates/pawns/glitch.tscn
Normal file
19993
templates/pawns/glitch.tscn
Normal file
File diff suppressed because one or more lines are too long
19993
templates/pawns/miko.tscn
Normal file
19993
templates/pawns/miko.tscn
Normal file
File diff suppressed because one or more lines are too long
19993
templates/pawns/mr_tingles.tscn
Normal file
19993
templates/pawns/mr_tingles.tscn
Normal file
File diff suppressed because one or more lines are too long
19992
templates/pawns/pawn_body.tscn
Normal file
19992
templates/pawns/pawn_body.tscn
Normal file
File diff suppressed because one or more lines are too long
19993
templates/pawns/veil.tscn
Normal file
19993
templates/pawns/veil.tscn
Normal file
File diff suppressed because one or more lines are too long
19992
templates/pawns/zero.tscn
Normal file
19992
templates/pawns/zero.tscn
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user