fix fungus poly ending run if expload, boss limbs spawn looks nicer

This commit is contained in:
bgkillas 2024-10-29 16:23:08 -04:00
parent c568f81855
commit 8e477ba8b6
6 changed files with 555 additions and 1 deletions

View file

@ -0,0 +1,11 @@
dofile( "data/scripts/lib/utilities.lua" )
function collision_trigger()
local entity_id = GetUpdatedEntityID()
local pos_x, pos_y = EntityGetTransform( entity_id )
if GameHasFlagRun("ew_flag_this_is_host") then
EntityLoad( "data/entities/animals/boss_limbs/boss_limbs.xml", pos_x, pos_y )
end
EntityLoad( "data/entities/particles/image_emitters/magical_symbol_fast.xml", pos_x, pos_y )
EntityKill( entity_id )
end

View file

@ -0,0 +1,19 @@
<Entity>
<CollisionTriggerComponent
width="144"
height="70"
radius="160"
required_tag="ew_peers" >
</CollisionTriggerComponent>
<LuaComponent
script_collision_trigger_hit="data/entities/animals/boss_limbs/boss_limbs_spawn.lua"
execute_every_n_frame="-1" >
</LuaComponent>
<SpriteComponent
image_file="data/entities/animals/boss_limbs/boss_limbs_dormant.png"
offset_y="23.5"
offset_x="21.5" >
</SpriteComponent>
</Entity>

View file

@ -0,0 +1,173 @@
<Entity name="$animal_fungus" >
<Base file="data/entities/base_enemy_basic.xml" >
<ItemChestComponent level="2" enemy_drop="1" > </ItemChestComponent>
<AnimalAIComponent
_enabled="1"
escape_if_damaged_probability="70"
food_material="blood"
attack_melee_enabled="0"
attack_melee_max_distance="1"
attack_dash_enabled="1"
attack_dash_lob="1.1"
attack_ranged_enabled="0"
aggressiveness_min="10"
aggressiveness_max="100"
>
</AnimalAIComponent>
<DamageModelComponent
hp="2.6"
air_needed="0"
ragdoll_filenames_file="data/ragdolls/fungus/filenames.txt"
fire_probability_of_ignition="100"
ragdoll_material="fungus_loose_trippy"
blood_material="blood_fungi"
blood_spray_material="blood_fungi"
blood_sprite_directional="data/particles/bloodsplatters/bloodsplatter_directional_purple_$[1-3].xml"
blood_sprite_large="data/particles/bloodsplatters/bloodsplatter_purple_$[1-3].xml"
minimum_knockback_force="100000"
>
<damage_multipliers
fire="40.0"
>
</damage_multipliers>
</DamageModelComponent>
<SpriteComponent
image_file="data/enemies_gfx/fungus.xml"
offset_x="0"
offset_y="0">
</SpriteComponent>
<PathFindingGridMarkerComponent
marker_work_flag="16" >
</PathFindingGridMarkerComponent>
<PathFindingComponent
frames_to_get_stuck="120"
can_jump="1"
never_consider_line_of_sight="1"
>
</PathFindingComponent>
<GenomeDataComponent
herd_id="fungus"
food_chain_rank="15"
is_predator="1" >
</GenomeDataComponent>
<CharacterPlatformingComponent
jump_velocity_y="-12"
run_velocity="9" >
</CharacterPlatformingComponent>
<CameraBoundComponent
max_count="30"
distance="160000">
</CameraBoundComponent>
<HitboxComponent
_enabled="1"
aabb_max_x="6"
aabb_max_y="4"
aabb_min_x="-6"
aabb_min_y="-10" >
</HitboxComponent>
<CharacterDataComponent
collision_aabb_min_x="-3.0"
collision_aabb_max_x="3.0"
collision_aabb_min_y="-10"
collision_aabb_max_y="3"
mass="1.3"
>
</CharacterDataComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/slime">
</AudioComponent>
</Base>
<MaterialInventoryComponent
_enabled="1"
drop_as_item="0"
leak_on_damage_percent="0.999"
>
<count_per_material_type>
<Material material="blood_fungi" count="400" />
</count_per_material_type>
</MaterialInventoryComponent>
<LuaComponent
script_death="data/scripts/animals/fungus_death.lua"
>
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_timer_finished="data/scripts/animals/fungus_death.lua"
remove_after_executed="1">
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_hit="data/scripts/animals/fungus_smoke.lua"
remove_after_executed="1">
</LuaComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="mortal"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
timer_for_destruction="20" >
</CollisionTriggerComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="mortal"
timer_for_destruction="0"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
>
</CollisionTriggerComponent>
<ParticleEmitterComponent
emitted_material_name="acid_gas"
offset.x="0"
offset.y="0"
x_pos_offset_min="-2"
y_pos_offset_min="-2"
x_pos_offset_max="2"
y_pos_offset_max="2"
x_vel_min="-10"
x_vel_max="10"
y_vel_min="-10"
y_vel_max="10"
count_min="1"
count_max="2"
lifetime_min="0.6"
lifetime_max="1.8"
create_real_particles="1"
emit_cosmetic_particles="0"
emission_interval_min_frames="10"
emission_interval_max_frames="35"
is_emitting="1" >
</ParticleEmitterComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/fungus" >
</AudioComponent>
</Entity>

View file

@ -0,0 +1,174 @@
<Entity name="$animal_fungus_big" >
<Base file="data/entities/base_enemy_basic.xml" >
<ItemChestComponent level="2" enemy_drop="1" > </ItemChestComponent>
<AnimalAIComponent
_enabled="1"
escape_if_damaged_probability="70"
food_material="blood"
attack_melee_enabled="0"
attack_melee_max_distance="1"
attack_dash_enabled="1"
attack_dash_lob="1.1"
attack_ranged_enabled="0"
aggressiveness_min="10"
aggressiveness_max="100"
attack_dash_damage="0.4"
>
</AnimalAIComponent>
<DamageModelComponent
hp="7.6"
air_needed="0"
ragdoll_filenames_file="data/ragdolls/fungus_big/filenames.txt"
fire_probability_of_ignition="20"
ragdoll_material="fungus_loose_trippy"
blood_material="blood_fungi"
blood_spray_material="blood_fungi"
blood_sprite_directional="data/particles/bloodsplatters/bloodsplatter_directional_purple_$[1-3].xml"
blood_sprite_large="data/particles/bloodsplatters/bloodsplatter_purple_$[1-3].xml"
minimum_knockback_force="100000"
>
<damage_multipliers
fire="2.0"
>
</damage_multipliers>
</DamageModelComponent>
<SpriteComponent
image_file="data/enemies_gfx/fungus_big.xml"
offset_x="0"
offset_y="0">
</SpriteComponent>
<PathFindingGridMarkerComponent
marker_work_flag="16" >
</PathFindingGridMarkerComponent>
<PathFindingComponent
frames_to_get_stuck="120"
can_jump="1"
never_consider_line_of_sight="1"
>
</PathFindingComponent>
<GenomeDataComponent
herd_id="fungus"
food_chain_rank="15"
is_predator="1" >
</GenomeDataComponent>
<CharacterPlatformingComponent
jump_velocity_y="-18"
run_velocity="14" >
</CharacterPlatformingComponent>
<CameraBoundComponent
max_count="30"
distance="160000">
</CameraBoundComponent>
<HitboxComponent
_enabled="1"
aabb_max_x="6"
aabb_max_y="4"
aabb_min_x="-6"
aabb_min_y="-16" >
</HitboxComponent>
<CharacterDataComponent
collision_aabb_min_x="-4.0"
collision_aabb_max_x="4.0"
collision_aabb_min_y="-14"
collision_aabb_max_y="3"
mass="1.3"
>
</CharacterDataComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/slime">
</AudioComponent>
</Base>
<MaterialInventoryComponent
_enabled="1"
drop_as_item="0"
leak_on_damage_percent="0.999"
>
<count_per_material_type>
<Material material="blood_fungi" count="400" />
</count_per_material_type>
</MaterialInventoryComponent>
<LuaComponent
script_death="data/scripts/animals/fungus_big_death.lua"
>
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_timer_finished="data/scripts/animals/fungus_big_death.lua"
remove_after_executed="1">
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_hit="data/scripts/animals/fungus_smoke.lua"
remove_after_executed="1">
</LuaComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="mortal"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
timer_for_destruction="40" >
</CollisionTriggerComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="mortal"
timer_for_destruction="0"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
>
</CollisionTriggerComponent>
<ParticleEmitterComponent
emitted_material_name="acid_gas"
offset.x="0"
offset.y="0"
x_pos_offset_min="-2"
y_pos_offset_min="-2"
x_pos_offset_max="2"
y_pos_offset_max="2"
x_vel_min="-10"
x_vel_max="10"
y_vel_min="-10"
y_vel_max="10"
count_min="1"
count_max="2"
lifetime_min="0.6"
lifetime_max="1.8"
create_real_particles="1"
emit_cosmetic_particles="0"
emission_interval_min_frames="2"
emission_interval_max_frames="10"
is_emitting="1" >
</ParticleEmitterComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/fungus" >
</AudioComponent>
</Entity>

View file

@ -0,0 +1,177 @@
<Entity name="$animal_fungus_tiny" tags="fungus_tiny_bad" >
<Base file="data/entities/base_enemy_basic.xml" >
<ItemChestComponent level="2" enemy_drop="1" > </ItemChestComponent>
<AnimalAIComponent
_enabled="1"
escape_if_damaged_probability="70"
food_material="blood"
attack_melee_enabled="0"
attack_melee_max_distance="1"
attack_dash_enabled="1"
attack_dash_lob="1.1"
attack_ranged_enabled="0"
aggressiveness_min="10"
aggressiveness_max="100"
>
</AnimalAIComponent>
<DamageModelComponent
hp="1.6"
air_needed="0"
ragdoll_filenames_file=""
fire_probability_of_ignition="100"
ragdoll_material="fungus_loose_trippy"
blood_material="blood_fungi"
blood_spray_material="blood_fungi"
blood_sprite_directional="data/particles/bloodsplatters/bloodsplatter_directional_purple_$[1-3].xml"
blood_sprite_large="data/particles/bloodsplatters/bloodsplatter_purple_$[1-3].xml"
minimum_knockback_force="100000"
>
<damage_multipliers
fire="40.0"
>
</damage_multipliers>
</DamageModelComponent>
<SpriteComponent
image_file="data/enemies_gfx/fungus_tiny_b.xml"
offset_x="0"
offset_y="0">
</SpriteComponent>
<PathFindingGridMarkerComponent
marker_work_flag="16" >
</PathFindingGridMarkerComponent>
<PathFindingComponent
frames_to_get_stuck="120"
can_jump="1"
never_consider_line_of_sight="1"
>
</PathFindingComponent>
<GenomeDataComponent
herd_id="fungus"
food_chain_rank="15"
is_predator="1" >
</GenomeDataComponent>
<CharacterPlatformingComponent
jump_velocity_y="-12"
run_velocity="9" >
</CharacterPlatformingComponent>
<CameraBoundComponent
max_count="30"
distance="160000">
</CameraBoundComponent>
<HitboxComponent
_enabled="1"
aabb_max_x="4"
aabb_max_y="4"
aabb_min_x="-4"
aabb_min_y="-8" >
</HitboxComponent>
<CharacterDataComponent
collision_aabb_min_x="-1.0"
collision_aabb_max_x="1.0"
collision_aabb_min_y="-6"
collision_aabb_max_y="3"
mass="1.3"
>
</CharacterDataComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/slime">
</AudioComponent>
</Base>
<MaterialInventoryComponent
_enabled="1"
drop_as_item="0"
leak_on_damage_percent="0.999"
>
<count_per_material_type>
<Material material="blood_fungi" count="400" />
</count_per_material_type>
</MaterialInventoryComponent>
<LuaComponent
script_death="data/scripts/animals/fungus_death.lua"
>
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_timer_finished="data/scripts/animals/fungus_death.lua"
remove_after_executed="1">
</LuaComponent>
<LuaComponent
execute_on_removed="0"
execute_every_n_frame="-1"
script_collision_trigger_hit="data/scripts/animals/fungus_smoke.lua"
remove_after_executed="1">
</LuaComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="player_unit"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
timer_for_destruction="20" >
</CollisionTriggerComponent>
<CollisionTriggerComponent
width="10"
height="10"
radius="5"
required_tag="player_unit"
timer_for_destruction="0"
destroy_this_entity_when_triggered="0"
remove_component_when_triggered="1"
>
</CollisionTriggerComponent>
<ParticleEmitterComponent
emitted_material_name="acid_gas"
offset.x="0"
offset.y="0"
x_pos_offset_min="-2"
y_pos_offset_min="-2"
x_pos_offset_max="2"
y_pos_offset_max="2"
x_vel_min="-10"
x_vel_max="10"
y_vel_min="-10"
y_vel_max="10"
count_min="1"
count_max="2"
lifetime_min="0.6"
lifetime_max="1.8"
create_real_particles="1"
emit_cosmetic_particles="0"
emission_interval_min_frames="10"
emission_interval_max_frames="35"
is_emitting="1" >
</ParticleEmitterComponent>
<AudioComponent
file="data/audio/Desktop/animals.bank"
event_root="animals/fungus" >
</AudioComponent>
<VariableStorageComponent
_tags="no_gold_drop">
</VariableStorageComponent>
</Entity>

View file

@ -37,7 +37,7 @@ local bad_mats = {"magic_liquid_random_polymorph",
-- "magic_liquid_teleportation",
-- "magic_liquid_unstable_teleportation",
"beer",
-- "alcohol",
"alcohol",
"sima",
"blood_cold",
"juhannussima",