Open thmsndk opened 1 year ago
The files we should create types for are:
Checklist of most functions of the game:
abs
accept_magiport
accept_party_invite
accept_party_request
activate
add_alert
add_border
add_bottom_button
add_challenge
add_chat
add_duel
add_frequest
add_greenlight_log
add_holiday_log
add_hp_bar
add_hp_bar_old
add_invite
add_log
add_magiport
add_name_tag
add_name_tag_old
add_partychat
add_pmchat
add_request
add_tint
add_top_button
add_update_notes
adopt_extras
alert_json
all_cx
animate_weapon
api_call
api_call_l
apply_backup
array_delete
arrow_movement_logic
ascending_comp
assassin_smoke
attack
attack_animation_logic
attack_click
attack_timeout_animation
auto_craft
auto_reload
backup_code_cache_once
bank_deposit
bank_retrieve
bank_store
bank_swap
bank_withdraw
base_points
bc
bfs
booster_modal_logic
border_logic
bsearch_start
btc
bump_up
buy
buy_shells
buy_with_gold
buy_with_shells
c_round
cached
calculate_difficulty
calculate_item_grade
calculate_item_properties
calculate_item_value
calculate_move
calculate_move_v2
calculate_movex
calculate_vxy
call_code_function
call_code_function_f
can_add_item
can_add_items
can_attack
can_heal
can_move
can_move_to
can_stack
can_transport
can_use
can_use_door
can_walk
ceil
cfocus
change_server
change_target
change_target_privately
character_code_eval
character_load_code
character_window_eval
chat_inventory_logic
clear_buttons
clear_drawings
clear_game_logs
clear_ui
clear_ui2
cli_smart_move_result
clone
close_chests
close_merchant
close_stand
closest_line
code_button_click
code_draw
code_eval
code_eval_if_r
code_logic
code_move
code_persistence_logic
code_travel
command_character
command_snippet
compound
compound_animation_logic
condition_click
confetti_shower
consume
continue_pathfinding
continuous_map_animation
cpm_window
craft
cruise
cshuffle
d_line
d_text
d_text_new
damage_multiplier
deferred
delete_indices
deposit
destroy
destroy_item
destroy_sprite
dice
direct_travel
direction_logic
dirty_fix
disappearing_circle
disappearing_clone
disconnect
dismantle
distance
donate
doneify
download_code_file
dps_multiplier
drag_logic
draw_circle
draw_crosshair
draw_line
draw_timeout
draw_timeouts_logic
draw_trigger
draw_xhair
e_array
egg_splash
electron_add_webview
electron_code_sync_logic
electron_dev_tools
electron_fullscreen
electron_get_data
electron_get_http_mode
electron_http_mode
electron_is_main
electron_mas_receipt
electron_open_codes
electron_reset
electron_screenshot
electron_start_watching
electron_steam_ticket
electron_stop_watching
empty_rect
enter
eps_equal
equip
equip_cx
esc_pressed
eval_character_snippet
eval_s
eval_snippet
exchange
exchange_animation_logic
exchange_buy
execute_codemirror
fade_away
fade_away_teleport
fade_out_blink
fade_out_magiport
filename_to_cdata
find_npc
firecrackers
floor
floor_f2
flurry
focus_chat
free_character
free_children
future_h
future_m
future_ms
future_s
gallery_click
game_log
game_stringify
game_stringify_simple
generate_textures
get
get_active_characters
get_active_code_slot
get_characters
get_chests
get_code_file
get_code_function
get_code_slot
get_edited_code_slot
get_entity
get_focus
get_height
get_input
get_map
get_monster
get_nearby_hostiles
get_nearest_hostile
get_nearest_monster
get_nearest_npc
get_party
get_player
get_servers
get_settings
get_socket
get_target
get_target_of
get_targeted_monster
get_tint
get_width
get_x
get_xy
get_y
giveaway
gprocess_game_data
h_minor
h_shake
handle_command
handle_death
handle_information
hardcore_logic
he
heal
Heap
hide_loader
hide_modal
hide_modals
hide_transports
hp_bar_logic
hsince
html_escape
hx
in_arr
in_arrD2
in_attack_range
in_pvp
init_fx
init_music
init_sounds
interact
inventory_click
inventory_middle
is_array
is_character
is_character_local
is_disabled
is_door_close
is_function
is_hidden
is_in_front
is_in_range
is_monster
is_moving
is_npc
is_number
is_nun
is_object
is_on_cooldown
is_paused
is_player
is_point_inside
is_pvp
is_silenced
is_string
is_substr
is_transporting
item_grade
item_position
item_properties
item_value
join
join_giveaway
json_to_html
jump_up
keymap_modal_logic
kick_party_member
leave
leave_party
leave_references
lf_click
light_logic
list_soon
listen_for_hints
load_base_code
load_code
load_code_s
local_cm_logic
locate_item
lock_item
log
log_trace
loot
lostandfound_buy
lstack
map_animation
map_cx
map_key
map_keys_and_skills
max
min
mode_resolve_all
mojo
move
ms_check
msince
mslot_click
mssince
name_logic
new_game_logic
new_map_logic
new_map_tile
new_sprite
no_no_no
npc_focus
nunv
object_sort
on_cm
on_combined_damage
on_destroy
on_disappear
on_draw
on_game_event
on_magiport
on_map_click
on_party_invite
on_party_request
on_skill
on_skill_up
one_file_op
open_chest
open_merchant
open_stand
party_click
party_say
pause
pcs
performance_trick
pget
ping
player_rclick_logic
plot
pm
point_distance
poof
position_modals
pot_timeout
preview_all
preview_item
private_say
process_file
process_game_data
proxy
prune_cx
pset
pslot_click
push_deferred
push_deferreds
push_ping
pvp_timeout
qpush
quantity
random_away
random_binaries
random_binary
random_one
random_point
random_rotating_rectangle
random_spark
randomStr
rebuild_chat
recalculate_move
recalculate_vxy
recreate_dtextures
recreate_wtextures
reduce_cooldown
reflect_music
refresh_page
regather_filters
reject_deferred
reject_deferreds
rejecting_promise
reload_data
remove_chat
remove_code_file
remove_code_fx
remove_sprite
reopen
require_code
reset_inventory
reset_mappings
reset_ms_check
resolve_deferred
resolve_deferreds
resolving_promise
respawn
restart_skill_tints
restore_base
restore_dimensions
rip_logic
rotate
rotated_texture
rough_size
round
round_float
rshake_i_major
safe_log
safe_stringify
safe_x_move
safe_y_move
save_code_file
save_code_s
say
seal_item
secondhand_buy
seed0
seed1
sell
send_cm
send_code_message
send_cx
send_gold
send_item
send_local_cm
send_mail
send_party_invite
send_party_request
send_server_cm
send_target_logic
send_typing
set
set_base
set_base_rectangle
set_button_color
set_button_onclick
set_button_value
set_direction
set_home
set_keymap
set_message
set_setting
set_skillbar
set_status
set_texture
set_uchance
set_uroll
set_xy
sfx
sfx_off
sfx_on
sh_click
shift
shift_d_texts
show_alert
show_character_snippet
show_commander
show_configure
show_confirm
show_credits
show_game_guide
show_json
show_loader
show_mail_modal
show_modal
show_opensource_info
show_privacy
show_shells_info
show_snippet
show_terms
show_transports
show_ttp
shuffle
simple_distance
skill_timeout
skill_timeout_singular
sleep
slot_click
small_success
smart_eval
smart_move
smart_move_logic
smart_num
smooth_path
sound_off
sound_on
split
sq
sqrt
ssince
start_animation
start_character
start_character_runner
start_emblem
start_name_tag
start_pathfinding
start_runner
start_timer
step_d_texts
stkp
stop
stop_animation
stop_character
stop_character_runner
stop_emblem
stop_logic
stop_name_tag
stop_runner
stop_timer
storage_get
storage_set
stpr
stprlink
swap
sway
syntax_highlight
target_player
test_bitmap
test_logic
the_door
the_lever
throw_item
tint_logic
to_filename
to_number
to_pretty_float
to_pretty_num
to_shrinked_num
to_title
toggle_character
toggle_code
toggle_runner
toggle_stats
town
trade
trade_buy
trade_sell
transport
transport_to
travel_p
trigger
trigger_character_event
trigger_event
tut
ui_error
ui_inspect
ui_log
ui_success
unequip
unfriend
unlock_item
unmap_key
unstuck_logic
update_servers_and_characters
upgrade
upgrade_animation_logic
upload_code
url_factory
use
use_hp_or_mp
use_nearest_door
use_skill
v_dive
v_dive_i
v_shake
v_shake_i
v_shake_i_minor
v_shake_i_minorX
v_shake_i2
v_shake_minor
vHeap
water_frame
weather_animation
weather_frame
wishlist
wishlist_click
wishlist_item_click
withdraw
within_xy_range
xmove
yes_yes_yes
I feel like this issue is too much/too broad.
Now that we've decided to have a first release, we should close it and wait until we have more precise needs in the future. (Either from us or from other people)
There is a bunch of utility functions returning a promise, as seen here http://adventure.land/docs/code/functions should theese functions live in seperate classes where they make sense, for example all the bank functionality in one file. party in another, and so forth. Or should we bundle them all into a single
functions.ts
file?