diff --git a/export_presets.cfg b/export_presets.cfg index 92d0a83..36aa53d 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -108,258 +108,3 @@ unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") rm -rf \"{temp_dir}\"" - -[preset.2] - -name="macOS" -platform="macOS" -runnable=true -advanced_options=false -dedicated_server=false -custom_features="" -export_filter="all_resources" -include_filter="" -exclude_filter="" -export_path="" -patches=PackedStringArray() -encryption_include_filters="" -encryption_exclude_filters="" -seed=0 -encrypt_pck=false -encrypt_directory=false -script_export_mode=2 - -[preset.2.options] - -export/distribution_type=1 -binary_format/architecture="universal" -custom_template/debug="" -custom_template/release="" -debug/export_console_wrapper=1 -application/icon="" -application/icon_interpolation=4 -application/bundle_identifier="" -application/signature="" -application/app_category="Games" -application/short_version="" -application/version="" -application/copyright="" -application/copyright_localized={} -application/min_macos_version_x86_64="10.12" -application/min_macos_version_arm64="11.00" -application/export_angle=0 -display/high_res=true -shader_baker/enabled=false -application/additional_plist_content="" -xcode/platform_build="14C18" -xcode/sdk_version="13.1" -xcode/sdk_build="22C55" -xcode/sdk_name="macosx13.1" -xcode/xcode_version="1420" -xcode/xcode_build="14C18" -codesign/codesign=1 -codesign/installer_identity="" -codesign/apple_team_id="" -codesign/identity="" -codesign/entitlements/custom_file="" -codesign/entitlements/allow_jit_code_execution=false -codesign/entitlements/allow_unsigned_executable_memory=false -codesign/entitlements/allow_dyld_environment_variables=false -codesign/entitlements/disable_library_validation=false -codesign/entitlements/audio_input=false -codesign/entitlements/camera=false -codesign/entitlements/location=false -codesign/entitlements/address_book=false -codesign/entitlements/calendars=false -codesign/entitlements/photos_library=false -codesign/entitlements/apple_events=false -codesign/entitlements/debugging=false -codesign/entitlements/app_sandbox/enabled=false -codesign/entitlements/app_sandbox/network_server=false -codesign/entitlements/app_sandbox/network_client=false -codesign/entitlements/app_sandbox/device_usb=false -codesign/entitlements/app_sandbox/device_bluetooth=false -codesign/entitlements/app_sandbox/files_downloads=0 -codesign/entitlements/app_sandbox/files_pictures=0 -codesign/entitlements/app_sandbox/files_music=0 -codesign/entitlements/app_sandbox/files_movies=0 -codesign/entitlements/app_sandbox/files_user_selected=0 -codesign/entitlements/app_sandbox/helper_executables=[] -codesign/entitlements/additional="" -codesign/custom_options=PackedStringArray() -notarization/notarization=0 -privacy/microphone_usage_description="" -privacy/microphone_usage_description_localized={} -privacy/camera_usage_description="" -privacy/camera_usage_description_localized={} -privacy/location_usage_description="" -privacy/location_usage_description_localized={} -privacy/address_book_usage_description="" -privacy/address_book_usage_description_localized={} -privacy/calendar_usage_description="" -privacy/calendar_usage_description_localized={} -privacy/photos_library_usage_description="" -privacy/photos_library_usage_description_localized={} -privacy/desktop_folder_usage_description="" -privacy/desktop_folder_usage_description_localized={} -privacy/documents_folder_usage_description="" -privacy/documents_folder_usage_description_localized={} -privacy/downloads_folder_usage_description="" -privacy/downloads_folder_usage_description_localized={} -privacy/network_volumes_usage_description="" -privacy/network_volumes_usage_description_localized={} -privacy/removable_volumes_usage_description="" -privacy/removable_volumes_usage_description_localized={} -privacy/tracking_enabled=false -privacy/tracking_domains=PackedStringArray() -privacy/collected_data/name/collected=false -privacy/collected_data/name/linked_to_user=false -privacy/collected_data/name/used_for_tracking=false -privacy/collected_data/name/collection_purposes=0 -privacy/collected_data/email_address/collected=false -privacy/collected_data/email_address/linked_to_user=false -privacy/collected_data/email_address/used_for_tracking=false -privacy/collected_data/email_address/collection_purposes=0 -privacy/collected_data/phone_number/collected=false -privacy/collected_data/phone_number/linked_to_user=false -privacy/collected_data/phone_number/used_for_tracking=false -privacy/collected_data/phone_number/collection_purposes=0 -privacy/collected_data/physical_address/collected=false -privacy/collected_data/physical_address/linked_to_user=false -privacy/collected_data/physical_address/used_for_tracking=false -privacy/collected_data/physical_address/collection_purposes=0 -privacy/collected_data/other_contact_info/collected=false -privacy/collected_data/other_contact_info/linked_to_user=false -privacy/collected_data/other_contact_info/used_for_tracking=false -privacy/collected_data/other_contact_info/collection_purposes=0 -privacy/collected_data/health/collected=false -privacy/collected_data/health/linked_to_user=false -privacy/collected_data/health/used_for_tracking=false -privacy/collected_data/health/collection_purposes=0 -privacy/collected_data/fitness/collected=false -privacy/collected_data/fitness/linked_to_user=false -privacy/collected_data/fitness/used_for_tracking=false -privacy/collected_data/fitness/collection_purposes=0 -privacy/collected_data/payment_info/collected=false -privacy/collected_data/payment_info/linked_to_user=false -privacy/collected_data/payment_info/used_for_tracking=false -privacy/collected_data/payment_info/collection_purposes=0 -privacy/collected_data/credit_info/collected=false -privacy/collected_data/credit_info/linked_to_user=false -privacy/collected_data/credit_info/used_for_tracking=false -privacy/collected_data/credit_info/collection_purposes=0 -privacy/collected_data/other_financial_info/collected=false -privacy/collected_data/other_financial_info/linked_to_user=false -privacy/collected_data/other_financial_info/used_for_tracking=false -privacy/collected_data/other_financial_info/collection_purposes=0 -privacy/collected_data/precise_location/collected=false -privacy/collected_data/precise_location/linked_to_user=false -privacy/collected_data/precise_location/used_for_tracking=false -privacy/collected_data/precise_location/collection_purposes=0 -privacy/collected_data/coarse_location/collected=false -privacy/collected_data/coarse_location/linked_to_user=false -privacy/collected_data/coarse_location/used_for_tracking=false -privacy/collected_data/coarse_location/collection_purposes=0 -privacy/collected_data/sensitive_info/collected=false -privacy/collected_data/sensitive_info/linked_to_user=false -privacy/collected_data/sensitive_info/used_for_tracking=false -privacy/collected_data/sensitive_info/collection_purposes=0 -privacy/collected_data/contacts/collected=false -privacy/collected_data/contacts/linked_to_user=false -privacy/collected_data/contacts/used_for_tracking=false -privacy/collected_data/contacts/collection_purposes=0 -privacy/collected_data/emails_or_text_messages/collected=false -privacy/collected_data/emails_or_text_messages/linked_to_user=false -privacy/collected_data/emails_or_text_messages/used_for_tracking=false -privacy/collected_data/emails_or_text_messages/collection_purposes=0 -privacy/collected_data/photos_or_videos/collected=false -privacy/collected_data/photos_or_videos/linked_to_user=false -privacy/collected_data/photos_or_videos/used_for_tracking=false -privacy/collected_data/photos_or_videos/collection_purposes=0 -privacy/collected_data/audio_data/collected=false -privacy/collected_data/audio_data/linked_to_user=false -privacy/collected_data/audio_data/used_for_tracking=false -privacy/collected_data/audio_data/collection_purposes=0 -privacy/collected_data/gameplay_content/collected=false -privacy/collected_data/gameplay_content/linked_to_user=false -privacy/collected_data/gameplay_content/used_for_tracking=false -privacy/collected_data/gameplay_content/collection_purposes=0 -privacy/collected_data/customer_support/collected=false -privacy/collected_data/customer_support/linked_to_user=false -privacy/collected_data/customer_support/used_for_tracking=false -privacy/collected_data/customer_support/collection_purposes=0 -privacy/collected_data/other_user_content/collected=false -privacy/collected_data/other_user_content/linked_to_user=false -privacy/collected_data/other_user_content/used_for_tracking=false -privacy/collected_data/other_user_content/collection_purposes=0 -privacy/collected_data/browsing_history/collected=false -privacy/collected_data/browsing_history/linked_to_user=false -privacy/collected_data/browsing_history/used_for_tracking=false -privacy/collected_data/browsing_history/collection_purposes=0 -privacy/collected_data/search_hhistory/collected=false -privacy/collected_data/search_hhistory/linked_to_user=false -privacy/collected_data/search_hhistory/used_for_tracking=false -privacy/collected_data/search_hhistory/collection_purposes=0 -privacy/collected_data/user_id/collected=false -privacy/collected_data/user_id/linked_to_user=false -privacy/collected_data/user_id/used_for_tracking=false -privacy/collected_data/user_id/collection_purposes=0 -privacy/collected_data/device_id/collected=false -privacy/collected_data/device_id/linked_to_user=false -privacy/collected_data/device_id/used_for_tracking=false -privacy/collected_data/device_id/collection_purposes=0 -privacy/collected_data/purchase_history/collected=false -privacy/collected_data/purchase_history/linked_to_user=false -privacy/collected_data/purchase_history/used_for_tracking=false -privacy/collected_data/purchase_history/collection_purposes=0 -privacy/collected_data/product_interaction/collected=false -privacy/collected_data/product_interaction/linked_to_user=false -privacy/collected_data/product_interaction/used_for_tracking=false -privacy/collected_data/product_interaction/collection_purposes=0 -privacy/collected_data/advertising_data/collected=false -privacy/collected_data/advertising_data/linked_to_user=false -privacy/collected_data/advertising_data/used_for_tracking=false -privacy/collected_data/advertising_data/collection_purposes=0 -privacy/collected_data/other_usage_data/collected=false -privacy/collected_data/other_usage_data/linked_to_user=false -privacy/collected_data/other_usage_data/used_for_tracking=false -privacy/collected_data/other_usage_data/collection_purposes=0 -privacy/collected_data/crash_data/collected=false -privacy/collected_data/crash_data/linked_to_user=false -privacy/collected_data/crash_data/used_for_tracking=false -privacy/collected_data/crash_data/collection_purposes=0 -privacy/collected_data/performance_data/collected=false -privacy/collected_data/performance_data/linked_to_user=false -privacy/collected_data/performance_data/used_for_tracking=false -privacy/collected_data/performance_data/collection_purposes=0 -privacy/collected_data/other_diagnostic_data/collected=false -privacy/collected_data/other_diagnostic_data/linked_to_user=false -privacy/collected_data/other_diagnostic_data/used_for_tracking=false -privacy/collected_data/other_diagnostic_data/collection_purposes=0 -privacy/collected_data/environment_scanning/collected=false -privacy/collected_data/environment_scanning/linked_to_user=false -privacy/collected_data/environment_scanning/used_for_tracking=false -privacy/collected_data/environment_scanning/collection_purposes=0 -privacy/collected_data/hands/collected=false -privacy/collected_data/hands/linked_to_user=false -privacy/collected_data/hands/used_for_tracking=false -privacy/collected_data/hands/collection_purposes=0 -privacy/collected_data/head/collected=false -privacy/collected_data/head/linked_to_user=false -privacy/collected_data/head/used_for_tracking=false -privacy/collected_data/head/collection_purposes=0 -privacy/collected_data/other_data_types/collected=false -privacy/collected_data/other_data_types/linked_to_user=false -privacy/collected_data/other_data_types/used_for_tracking=false -privacy/collected_data/other_data_types/collection_purposes=0 -ssh_remote_deploy/enabled=false -ssh_remote_deploy/host="user@host_ip" -ssh_remote_deploy/port="22" -ssh_remote_deploy/extra_args_ssh="" -ssh_remote_deploy/extra_args_scp="" -ssh_remote_deploy/run_script="#!/usr/bin/env bash -unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" -open \"{temp_dir}/{exe_name}.app\" --args {cmd_args}" -ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash -kill $(pgrep -x -f \"{temp_dir}/{exe_name}.app/Contents/MacOS/{exe_name} {cmd_args}\") -rm -rf \"{temp_dir}\"" diff --git a/items/active_items/horizontal_dash/horizontal_dash.gd b/items/active_items/horizontal_dash/horizontal_dash.gd new file mode 100644 index 0000000..1fef18a --- /dev/null +++ b/items/active_items/horizontal_dash/horizontal_dash.gd @@ -0,0 +1,21 @@ +extends ActiveItem +var cooldown = 1.5 +var dash_time = 0.2 +var dashing = 0 + +func _physics_process(delta: float) -> void: + super(delta) + if dashing > 0: + dashing -= delta + player.reset_to_velocity = Vector2.RIGHT * player.facing * 1600 + + +func actually_collect(): + player.set_cooldown(cooldown) + +func activate(): + $DashSound.play() + player.activate_cooldown() + player.air_jumps_current = min(player.air_jumps_current + 1, player.air_jumps_max) + dashing = dash_time + player.inv_time = max(player.inv_time, dash_time) diff --git a/items/active_items/horizontal_dash/horizontal_dash.gd.uid b/items/active_items/horizontal_dash/horizontal_dash.gd.uid new file mode 100644 index 0000000..34ff812 --- /dev/null +++ b/items/active_items/horizontal_dash/horizontal_dash.gd.uid @@ -0,0 +1 @@ +uid://jq326dmuaj22 diff --git a/items/active_items/horizontal_dash/horizontal_dash.tscn b/items/active_items/horizontal_dash/horizontal_dash.tscn new file mode 100644 index 0000000..5621d47 --- /dev/null +++ b/items/active_items/horizontal_dash/horizontal_dash.tscn @@ -0,0 +1,52 @@ +[gd_scene load_steps=8 format=3 uid="uid://dy17xhg1yrl0o"] + +[ext_resource type="Script" uid="uid://jq326dmuaj22" path="res://items/active_items/horizontal_dash/horizontal_dash.gd" id="1_ktd5x"] +[ext_resource type="Texture2D" uid="uid://cnn3tadylge8y" path="res://items/active_items/horizontal_dash/horizontaldash.png" id="3_ktd5x"] +[ext_resource type="Texture2D" uid="uid://d4mrbgfl7jpqq" path="res://items/ItemShine.png" id="3_vqrqe"] +[ext_resource type="PackedScene" uid="uid://chs0u61f45nau" path="res://utils/earth_aligner.tscn" id="4_gtuhj"] +[ext_resource type="AudioStream" uid="uid://bg1w0fyeyys2p" path="res://sounds/item-equip-6904.mp3" id="5_5y0ew"] +[ext_resource type="AudioStream" uid="uid://ds0yw3au0quae" path="res://sounds/whoosh.mp3" id="6_a6gm0"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_ktd5x"] +radius = 12.6667 + +[node name="HorizontalDash" type="Area2D"] +scale = Vector2(1.4, 1.4) +script = ExtResource("1_ktd5x") +sprite = ExtResource("3_ktd5x") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +visible = false +position = Vector2(-12, 13) +rotation = 1.5707964 +scale = Vector2(3, 2) +shape = SubResource("CircleShape2D_ktd5x") + +[node name="CollisionShape2D2" type="CollisionShape2D" parent="."] +visible = false +position = Vector2(9, 10) +rotation = 1.5707964 +scale = Vector2(1, 4) +shape = SubResource("CircleShape2D_ktd5x") + +[node name="Sprite2D2" type="Sprite2D" parent="."] +modulate = Color(0.725757, 0.519822, 5.77569e-07, 1) +position = Vector2(-2, 14) +scale = Vector2(1.2, 1.2) +texture = ExtResource("3_vqrqe") + +[node name="Sprite2D" type="Sprite2D" parent="."] +position = Vector2(4.9999995, 12.999999) +scale = Vector2(0.8, 0.8) +texture = ExtResource("3_ktd5x") + +[node name="EarthAligner" parent="." instance=ExtResource("4_gtuhj")] + +[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("5_5y0ew") +volume_db = 15.0 + +[node name="DashSound" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("6_a6gm0") +volume_db = 5.0 +pitch_scale = 1.23 diff --git a/items/active_items/horizontal_dash/horizontaldash.png b/items/active_items/horizontal_dash/horizontaldash.png new file mode 100644 index 0000000..2edcb77 Binary files /dev/null and b/items/active_items/horizontal_dash/horizontaldash.png differ diff --git a/items/active_items/horizontal_dash/horizontaldash.png.import b/items/active_items/horizontal_dash/horizontaldash.png.import new file mode 100644 index 0000000..d64bf12 --- /dev/null +++ b/items/active_items/horizontal_dash/horizontaldash.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cnn3tadylge8y" +path="res://.godot/imported/horizontaldash.png-3a6880e60346d9b8d19d47557212a382.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://items/active_items/horizontal_dash/horizontaldash.png" +dest_files=["res://.godot/imported/horizontaldash.png-3a6880e60346d9b8d19d47557212a382.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 diff --git a/items/generic/item_spawn.gd b/items/generic/item_spawn.gd index f391672..75b9a97 100644 --- a/items/generic/item_spawn.gd +++ b/items/generic/item_spawn.gd @@ -7,7 +7,7 @@ static var unique_items : Array[PackedScene] = [] @export var rarity_bonus = 0 @export var guarantee_rare : bool = false -@export var unique_base_chance = .05 +@export var unique_base_chance = .03 @export var rare_base_chance = .2 @export var unique_bonus_multiplier = .025 @export var rare_bonus_multiplier = .1 @@ -40,5 +40,6 @@ static func refill_unique_item_pool(): unique_items = [ load("res://items/permanent_items/backslash.tscn"), load("res://items/permanent_items/high_jump.tscn"), - load("res://items/permanent_items/upslash.tscn") + load("res://items/permanent_items/upslash.tscn"), + load("res://items/active_items/horizontal_dash/horizontal_dash.tscn") ]