216 lines
4.8 KiB
XML
216 lines
4.8 KiB
XML
|
<Entity name="$animal_friend" tags="big_friend" >
|
||
|
|
||
|
<Base file="data/entities/base_enemy_flying.xml" >
|
||
|
<AnimalAIComponent
|
||
|
preferred_job="JobDefault"
|
||
|
escape_if_damaged_probability="40"
|
||
|
attack_melee_damage_min="0.1"
|
||
|
attack_melee_damage_max="0.2"
|
||
|
creature_detection_range_x="400"
|
||
|
creature_detection_range_y="400"
|
||
|
creature_detection_angular_range_deg="60"
|
||
|
food_material="meat"
|
||
|
needs_food="1"
|
||
|
sense_creatures="1"
|
||
|
can_fly="1"
|
||
|
attack_melee_enabled="1"
|
||
|
attack_melee_max_distance="10"
|
||
|
attack_ranged_enabled="1"
|
||
|
attack_ranged_action_frame="2"
|
||
|
attack_melee_action_frame="2"
|
||
|
attack_ranged_min_distance="30"
|
||
|
attack_ranged_max_distance="220"
|
||
|
attack_ranged_entity_file="data/entities/projectiles/ultimate_killer_megabomb.xml"
|
||
|
attack_ranged_frames_between="20"
|
||
|
attack_ranged_offset_x="0"
|
||
|
attack_ranged_offset_y="-10"
|
||
|
aggressiveness_min="1"
|
||
|
aggressiveness_max="80"
|
||
|
>
|
||
|
</AnimalAIComponent>
|
||
|
|
||
|
<DamageModelComponent
|
||
|
hp="15"
|
||
|
materials_create_messages="1"
|
||
|
ragdoll_filenames_file="data/ragdolls/friend/filenames.txt"
|
||
|
ragdoll_material="meat_helpless"
|
||
|
fire_probability_of_ignition="0"
|
||
|
blood_spray_material="blood"
|
||
|
ragdoll_offset_y="1"
|
||
|
air_needed="1"
|
||
|
healing_particle_effect_entity="data/entities/particles/heal_effect.xml"
|
||
|
materials_damage="0"
|
||
|
>
|
||
|
<damage_multipliers
|
||
|
explosion="0.2"
|
||
|
>
|
||
|
</damage_multipliers>
|
||
|
</DamageModelComponent>
|
||
|
|
||
|
<SpriteComponent
|
||
|
image_file="data/enemies_gfx/friend.xml"
|
||
|
offset_x="0"
|
||
|
offset_y="0"
|
||
|
>
|
||
|
</SpriteComponent>
|
||
|
|
||
|
<PathFindingComponent
|
||
|
can_jump="0"
|
||
|
can_fly="1"
|
||
|
jump_speed="80"
|
||
|
initial_jump_lob="1"
|
||
|
initial_jump_max_distance_x="60"
|
||
|
initial_jump_max_distance_y="60" >
|
||
|
</PathFindingComponent>
|
||
|
|
||
|
<PathFindingGridMarkerComponent
|
||
|
marker_work_flag="24" >
|
||
|
</PathFindingGridMarkerComponent>
|
||
|
|
||
|
<GenomeDataComponent
|
||
|
herd_id="orcs"
|
||
|
food_chain_rank="9"
|
||
|
is_predator="1" >
|
||
|
</GenomeDataComponent>
|
||
|
|
||
|
<CharacterPlatformingComponent
|
||
|
fly_speed_change_spd="0.8"
|
||
|
fly_velocity_x="28"
|
||
|
accel_x="0.03"
|
||
|
jump_velocity_y="-12"
|
||
|
run_velocity="17" >
|
||
|
</CharacterPlatformingComponent>
|
||
|
|
||
|
<CameraBoundComponent
|
||
|
max_count="30"
|
||
|
distance="160000">
|
||
|
</CameraBoundComponent>
|
||
|
|
||
|
<HitboxComponent
|
||
|
_enabled="1"
|
||
|
aabb_min_x="-10"
|
||
|
aabb_max_x="10"
|
||
|
aabb_min_y="-20"
|
||
|
aabb_max_y="5"
|
||
|
>
|
||
|
</HitboxComponent>
|
||
|
|
||
|
<CharacterDataComponent
|
||
|
collision_aabb_min_x="-6.0"
|
||
|
collision_aabb_max_x="6.0"
|
||
|
collision_aabb_min_y="-10"
|
||
|
collision_aabb_max_y="3"
|
||
|
mass="1.1"
|
||
|
>
|
||
|
</CharacterDataComponent>
|
||
|
</Base>
|
||
|
|
||
|
<Entity>
|
||
|
<InheritTransformComponent>
|
||
|
<Transform position.x="0" position.y="-3" ></Transform>
|
||
|
</InheritTransformComponent>
|
||
|
|
||
|
<Base file="data/entities/base_jetpack.xml" />
|
||
|
</Entity>
|
||
|
|
||
|
<LightComponent
|
||
|
radius="50"
|
||
|
fade_out_time="1.5" >
|
||
|
</LightComponent>
|
||
|
|
||
|
<AudioComponent
|
||
|
file="data/audio/Desktop/animals.bank"
|
||
|
event_root="animals/ultimate_killer" >
|
||
|
</AudioComponent>
|
||
|
|
||
|
<LuaComponent
|
||
|
script_death="data/scripts/animals/friend_death.lua"
|
||
|
execute_every_n_frame="-1"
|
||
|
remove_after_executed="0"
|
||
|
>
|
||
|
</LuaComponent>
|
||
|
|
||
|
<LuaComponent
|
||
|
script_source_file="data/scripts/animals/friend_status.lua"
|
||
|
execute_every_n_frame="5"
|
||
|
>
|
||
|
</LuaComponent>
|
||
|
|
||
|
<LuaComponent
|
||
|
script_shot="data/scripts/animals/friend_shot.lua"
|
||
|
execute_every_n_frame="-1"
|
||
|
>
|
||
|
</LuaComponent>
|
||
|
|
||
|
<VariableStorageComponent
|
||
|
name="friend_status"
|
||
|
value_int="0"
|
||
|
>
|
||
|
</VariableStorageComponent>
|
||
|
|
||
|
<Entity>
|
||
|
<InheritTransformComponent>
|
||
|
<Transform position.x="0" position.y="-12" ></Transform>
|
||
|
</InheritTransformComponent>
|
||
|
|
||
|
<CellEaterComponent
|
||
|
radius="12"
|
||
|
eat_probability="100">
|
||
|
</CellEaterComponent>
|
||
|
</Entity>
|
||
|
|
||
|
<SpriteComponent
|
||
|
_tags="health_bar_back,ui,invincible"
|
||
|
_enabled="1"
|
||
|
transform_offset.x="0"
|
||
|
transform_offset.y="12"
|
||
|
alpha="1"
|
||
|
has_special_scale="1"
|
||
|
image_file="data/ui_gfx/health_slider_back.png"
|
||
|
is_text_sprite="0"
|
||
|
next_rect_animation=""
|
||
|
offset_x="12"
|
||
|
offset_y="42"
|
||
|
rect_animation=""
|
||
|
special_scale_x="1"
|
||
|
special_scale_y="1"
|
||
|
ui_is_parent="0"
|
||
|
update_transform="1"
|
||
|
visible="0"
|
||
|
emissive="1"
|
||
|
never_ragdollify_on_death="1"
|
||
|
z_index="-9000" >
|
||
|
</SpriteComponent>
|
||
|
|
||
|
<SpriteComponent
|
||
|
_tags="health_bar,ui,invincible"
|
||
|
_enabled="1"
|
||
|
alpha="1"
|
||
|
transform_offset.x="0"
|
||
|
transform_offset.y="12"
|
||
|
has_special_scale="1"
|
||
|
image_file="data/ui_gfx/health_slider_front.png"
|
||
|
is_text_sprite="0"
|
||
|
next_rect_animation=""
|
||
|
offset_x="12"
|
||
|
offset_y="42"
|
||
|
rect_animation=""
|
||
|
special_scale_x="1"
|
||
|
special_scale_y="1"
|
||
|
ui_is_parent="0"
|
||
|
update_transform="1"
|
||
|
visible="0"
|
||
|
emissive="1"
|
||
|
never_ragdollify_on_death="1"
|
||
|
z_index="-9000" >
|
||
|
</SpriteComponent>
|
||
|
|
||
|
<HealthBarComponent>
|
||
|
</HealthBarComponent>
|
||
|
|
||
|
<VariableStorageComponent
|
||
|
_tags="no_gold_drop">
|
||
|
</VariableStorageComponent>
|
||
|
|
||
|
</Entity>
|