-
Notifications
You must be signed in to change notification settings - Fork 1
/
vls.log
210 lines (210 loc) · 272 KB
/
vls.log
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"VLS Version: 0.0.1.d914108, OS: macos 64"}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"VLS executable path: /Users/fleur/.local/share/nvim/lsp_servers/vls/vls"}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"VLS build with V 4b3c3d9"}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"Client / Editor: Neovim 0.7.2 (PID: 60857)"}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"Using V path (VROOT): /Users/fleur/Documents/prod/ressources/v"}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":1,"result":{"capabilities":{"textDocumentSync":2,"hoverProvider":true,"completionProvider":{"resolveProvider":false,"triggerCharacters":["=",".",":","{",",","("," "]},"signatureHelpProvider":{"triggerCharacters":["("],"retriggerCharacters":[","," "]},"definitionProvider":true,"typeDefinitionProvider":false,"implementationProvider":true,"referencesProvider":false,"documentHightlightProvider":false,"documentSymbolProvider":true,"workspaceSymbolProvider":true,"codeActionProvider":false,"codeLensProvider":{"resolveProvider":false},"documentFormattingProvider":true,"documentOnTypeFormattingProvider":{"firstTriggerCharacter":"","moreTriggerCharacter":[]},"renameProvider":false,"documentLinkProvider":false,"colorProvider":false,"declarationProvider":false,"executeCommandProvider":"","foldingRangeProvider":true,"experimental":{}}}},"timestamp":1664565569}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/skins.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/entity_cacher.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/entity_fns.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/visuals.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/chams.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/interfaces.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/config.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/others.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/drawable.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/hooks.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/render_queue.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/win_defs.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/app.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565570}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565573}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565574}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565574}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565574}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565574}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565574}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565575}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565575}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565575}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565575}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565575}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":2,"method":"textDocument/completion","params":{"position":{"line":140,"character":61},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v"}}},"timestamp":1664565576}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":2,"result":[{"label":"rand","kind":9,"detail":"","insertText":"rand","insertTextFormat":1},{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"messages","kind":6,"detail":"messages []string","insertText":"messages","insertTextFormat":1},{"label":"d","kind":6,"detail":"d","insertText":"d","insertTextFormat":1},{"label":"\"\n\n\t\t","kind":6,"detail":"mut \"\n\n\t\t string","insertText":"\"\n\n\t\t","insertTextFormat":1},{"label":"k","kind":6,"detail":"mut k KillSound","insertText":"k","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx","insertText":"app_ctx","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, item_quality:$13, tmp_rename_buff:$14, tmp_rename_len:$15}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565576}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565576}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565578}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565579}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565579}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565579}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":3,"method":"textDocument/completion","params":{"position":{"line":141,"character":46},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v"}}},"timestamp":1664565586}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":3,"result":[{"label":"rand","kind":9,"detail":"","insertText":"rand","insertTextFormat":1},{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"messages","kind":6,"detail":"messages []string","insertText":"messages","insertTextFormat":1},{"label":"d","kind":6,"detail":"d","insertText":"d","insertTextFormat":1},{"label":"\"\n\n\t\t","kind":6,"detail":"mut \"\n\n\t\t string","insertText":"\"\n\n\t\t","insertTextFormat":1},{"label":"k","kind":6,"detail":"mut k KillSound","insertText":"k","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx","insertText":"app_ctx","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, item_quality:$13, tmp_rename_buff:$14, tmp_rename_len:$15}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565586}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565586}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565588}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565588}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565595}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565595}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565595}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565596}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565596}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565596}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565596}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":4,"method":"textDocument/completion","params":{"position":{"line":142,"character":62},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v"}}},"timestamp":1664565597}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":4,"result":[{"label":"rand","kind":9,"detail":"","insertText":"rand","insertTextFormat":1},{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"messages","kind":6,"detail":"messages []string","insertText":"messages","insertTextFormat":1},{"label":"d","kind":6,"detail":"d","insertText":"d","insertTextFormat":1},{"label":"\"\n\n\t\t","kind":6,"detail":"mut \"\n\n\t\t string","insertText":"\"\n\n\t\t","insertTextFormat":1},{"label":"k","kind":6,"detail":"mut k KillSound","insertText":"k","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx","insertText":"app_ctx","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, item_quality:$13, tmp_rename_buff:$14, tmp_rename_len:$15}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565597}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565597}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565615}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565615}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565616}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565616}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565616}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565616}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565616}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565617}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565617}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":5,"method":"textDocument/completion","params":{"position":{"line":143,"character":55},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v"}}},"timestamp":1664565618}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":5,"result":[{"label":"rand","kind":9,"detail":"","insertText":"rand","insertTextFormat":1},{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"messages","kind":6,"detail":"messages []string","insertText":"messages","insertTextFormat":1},{"label":"d","kind":6,"detail":"d","insertText":"d","insertTextFormat":1},{"label":"\"\n\n\t\t","kind":6,"detail":"mut \"\n\n\t\t string","insertText":"\"\n\n\t\t","insertTextFormat":1},{"label":"%","kind":6,"detail":"%","insertText":"%","insertTextFormat":1},{"label":"\t\tfor","kind":6,"detail":"mut \t\tfor string","insertText":"\t\tfor","insertTextFormat":1},{"label":" ","kind":6,"detail":" ","insertText":" ","insertTextFormat":1},{"label":"\tfor ","kind":6,"detail":"mut \tfor string","insertText":"\tfor ","insertTextFormat":1},{"label":"k","kind":6,"detail":"mut k KillSound","insertText":"k","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx","insertText":"app_ctx","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, item_quality:$13, tmp_rename_buff:$14, tmp_rename_len:$15}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565618}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565618}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/killsounds.v","diagnostics":[]}},"timestamp":1664565621}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/config.v","diagnostics":[]}},"timestamp":1664565625}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/config.v","diagnostics":[]}},"timestamp":1664565625}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":6,"method":"textDocument/formatting","params":{"options":{"insertSpaces":false,"tabSize":4},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/config.v"}}},"timestamp":1664565633}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":6,"result":[{"range":{"start":{"line":0,"character":0},"end":{"line":345,"character":0}},"newText":"module golphook\n\n// export config is horrible but base64 module don't work in dlls\nimport utils\nimport json\nimport rand\nimport os\n\nfn get_knife_data(knife_id int) string {\n\treturn match knife_id {\n\t\t503 { 'v_knife_css.mdl' }\n\t\t507 { 'v_knife_karam.mdl' }\n\t\t508 { 'v_knife_m9_bay.mdl' }\n\t\t515 { 'v_knife_butterfly.mdl' }\n\t\t505 { 'v_knife_flip.mdl' }\n\t\t506 { 'v_knife_gut.mdl' }\n\t\t500 { 'v_knife_bayonet.mdl' }\n\t\t509 { 'v_knife_tactical.mdl' }\n\t\t520 { 'v_knife_gypsy_jackknife.mdl' }\n\t\telse { 'v_knife_karam.mdl' }\n\t}\n}\n\nfn get_material_str(for_material_id int) string {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.get_material_str')\n\t}\n\n\tmatch int(for_material_id) {\n\t\t0 { return 'debug/debugambientcube' }\n\t\t1 { return 'models/inventory_items/trophy_majors/gold' }\n\t\t2 { return 'models/player/ct_fbi/ct_fbi_glass' }\n\t\t3 { return 'models/gibs/glass/glass' }\n\t\t4 { return 'models/inventory_items/trophy_majors/crystal_clear' }\n\t\t5 { return 'models/inventory_items/trophy_majors/crystal_blue' }\n\t\t6 { return 'models/inventory_items/trophy_majors/velvet' }\n\t\telse { return 'debug/debugambientcube' }\n\t}\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\nfn get_material_id(for_material_name string) int {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.get_material_id')\n\t}\n\n\tmatch for_material_name {\n\t\t'debug/debugambientcube' { return 0 }\n\t\t'models/inventory_items/trophy_majors/gold' { return 1 }\n\t\t'models/player/ct_fbi/ct_fbi_glass' { return 2 }\n\t\t'models/gibs/glass/glass' { return 3 }\n\t\t'models/inventory_items/trophy_majors/crystal_clear' { return 4 }\n\t\t'models/inventory_items/trophy_majors/crystal_blue' { return 5 }\n\t\t'models/inventory_items/trophy_majors/velvet' { return 6 }\n\t\telse { return 0 }\n\t}\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\nstruct Config {\npub mut:\n\tname string = 'golp'\n\t// others\n\tknife_changer bool = true\n\n\tbop bool = true\n\n\tspectator bool = true\n\tspectator_count_color utils.Color = utils.color_rbga(108, 92, 231, 255)\n\tspectators_color utils.Color = utils.color_rbga(255, 255, 255, 255)\n\n\tkillsound bool = true\n\tkillsound_type int = 1 // default = woof (0)\n\n\tviewmodel_override bool = true\n\tviewmodel_override_x f32 = 7\n\tviewmodel_override_y f32 = 7\n\tviewmodel_override_z f32 = -7\n\tviewmodel_override_fov f32 = 80\n\n\tno_flash bool\n\n\tkillsay bool = true\n\t// skins\n\tskins_changer bool = true\n\tskins []SkinEntry = [\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_knife_karambit\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t\tis_knife: true\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_ak47\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_m4a1_silencer\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_m4a1\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_famas\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_sg556\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_awp\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_ssg08\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_cz75a\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_deagle\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_usp_silencer\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_glock\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_elite\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_revolver\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_p250\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_mac10\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_mp9\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_nova\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_mag7\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_sawedoff\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t\tSkinEntry{\n\t\t\tdefinition_index: .weapon_xm1014\n\t\t\tquality: 0\n\t\t\tpaint_kit: 0\n\t\t\twear: 0.0\n\t\t\tseed: 0\n\t\t},\n\t]\n\t// visuals\n\tglow bool = true\n\tglow_color_if_visible utils.Color = utils.color_rbga(236, 240, 241, 130)\n\tglow_color_if_not_visible utils.Color = utils.color_rbga(236, 240, 241, 130)\n\n\tbox bool = true\n\tbox_color_if_visible utils.Color = utils.color_rbga(1, 1, 1, 255)\n\tbox_color_if_not_visible utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tnames bool = true\n\thp bool = true\n\tnames_color_if_visible utils.Color = utils.color_rbga(1, 1, 1, 255)\n\tnames_color_if_not_visible utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tweapon_name bool\n\tweapon_clip bool\n\tweapon_name_color_if_visible utils.Color = utils.color_rbga(1, 1, 1, 255)\n\tweapon_name_color_if_not_visible utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tsnapline bool\n\tsnapline_color_if_visible utils.Color = utils.color_rbga(1, 1, 1, 255)\n\tsnapline_color_if_not_visible utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tradar bool = true\n\n\twatermark bool = true\n\twatermark_color utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tindicator bool = true\n\tindicator_color_if_on utils.Color = utils.color_rbga(108, 92, 231, 255)\n\tindicator_color_if_off utils.Color = utils.color_rbga(236, 240, 241, 255)\n\n\tfov_circle bool = true\n\tfov_circle_color utils.Color = utils.color_rbga(155, 89, 182, 255)\n\t// chams\n\tchams bool\n\tchams_is_visible_only bool\n\tchams_material int // default = 0\n\tchams_color_if_visible utils.Color = utils.color_rbga(20, 75, 97, 255)\n\tchams_color_if_not_visible utils.Color = utils.color_rbga(0, 0, 0, 50)\n\t// engine\n\n\tengine bool = true\n\tfov f32 = 20\n\tengine_adjust_fov_scope bool = true\n\n\tengine_bones_list []int = [0, 8, 9, 6, 5]\n\tengine_force_bone_id int // default = 0\n\tengine_pref_bone_id int = 8\n\n\tengine_automatic_fire_key int = 0x5\n\tengine_force_bone_key int = 0x43\n\tengine_force_awall_key int = 0x06\n\n\tengine_automatic_fire_key_toggle bool\n\tengine_force_awall_key_toggle bool = true\n\tengine_force_bone_key_toggle bool = true\n\n\tengine_vhv_mode bool\n\tengine_vhv_aw_factor f32\n}\n\nstruct ConfigManager {\npub mut:\n\tconfigs []Config = [Config{}]\n\tactive_config &Config = unsafe { nil }\n\tactive_config_idx int\n\tselected_config_in_menu int\n}\n\npub fn (mut c ConfigManager) bootstrap() {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.bootstrap')\n\t}\n\n\thome := os.home_dir()\n\tgolphook_folder := '$home\\\\golphook'\n\tif !os.exists(golphook_folder) {\n\t\tos.mkdir(golphook_folder) or {\n\t\t\tutils.error_critical('Failed to create ressource configs', 'folder')\n\t\t}\n\t}\n\n\tconfigs_file := '$home\\\\golphook\\\\.configs'\n\tif !os.exists(configs_file) {\n\t\tos.write_file(configs_file, 'text string') or {\n\t\t\tutils.error_critical('Failed to create ressource configs', 'file')\n\t\t}\n\t}\n\n\tconfigs_file_content := os.read_file(configs_file) or {\n\t\tutils.error_critical('Failed to acces ressource configs', 'file')\n\t\treturn\n\t}\n\n\tmut configs := json.decode([]Config, configs_file_content) or {\n\t\tunsafe {\n\t\t\tutils.msg_c('failed to read configs default one will be set', utils.color_rbga(255,\n\t\t\t\t255, 255, 255))\n\t\t}\n\t\tc.active_config = &c.configs[0]\n\t\treturn\n\t}\n\n\tc.configs.clear()\n\n\tc.configs = configs\n\tc.configs[0] = Config{}\n\tc.active_config = &c.configs[0]\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) export(for_config_with_index int) string {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.export')\n\t}\n\n\tjson := json.encode(c.configs[for_config_with_index])\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n\n\treturn json\n}\n\npub fn (mut c ConfigManager) import_fc(from_text string) {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.import_fc')\n\t}\n\n\tmut cfg := json.decode(Config, from_text) or {\n\t\tunsafe { utils.msg_c('failed to decode config', utils.color_rbga(255, 255, 255,\n\t\t\t255)) }\n\t\treturn\n\t}\n\n\t// in this code base there are this kind of case where casting to an it make crash\n\t// and f32 is the only one which don't crash\n\tcfg.name = f32(c.configs.len + 1).str()\n\tc.configs << cfg\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) delete(for_config_with_index int) {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.delete')\n\t}\n\n\tif for_config_with_index == 0 {\n\t\tunsafe {\n\t\t\tutils.msg_c('cannot delete default config', utils.color_rbga(255, 255, 255,\n\t\t\t\t255))\n\t\t}\n\t\treturn\n\t}\n\tif for_config_with_index == c.active_config_idx {\n\t\tc.change_to(0)\n\t}\n\tc.configs.delete(for_config_with_index)\n\tc.save()\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) save() {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.save')\n\t}\n\n\tjson := json.encode_pretty(c.configs)\n\thome := os.home_dir()\n\tconfigs_file := '$home\\\\golphook\\\\.configs'\n\tos.write_file(configs_file, json) or {\n\t\tutils.error_critical('Failed to access ressource configs', 'file')\n\t}\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) rename(for_config_with_index int, with_new_name string) {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.rename')\n\t}\n\n\tif for_config_with_index == 0 {\n\t\tunsafe { utils.msg_c('cannot rename default config', utils.color_rbga(255, 255,\n\t\t\t255, 255)) }\n\t\treturn\n\t}\n\n\tc.configs[for_config_with_index].name = with_new_name\n\tc.save()\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) new_blank(with_name string) {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.new_blank')\n\t}\n\n\tmut new_cfg := Config{}\n\tnew_cfg.name = f32(c.configs.len + 1).str()\n\tif with_name.len != 0 {\n\t\tnew_cfg.name = with_name\n\t}\n\tc.configs << new_cfg\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n\npub fn (mut c ConfigManager) change_to(for_config_with_index int) {\n\t$if prod {\n\t\tC.VMProtectBeginMutation(c'cfg.change_to')\n\t}\n\n\tmut app_ctx := unsafe { app() }\n\n\tif for_config_with_index == c.active_config_idx {\n\t\treturn\n\t}\n\n\t// tmp fix to keep backward compatibility with old configs\n\n\tif c.configs[for_config_with_index].skins.len == 0 {\n\t\tc.configs[for_config_with_index].skins = c.configs[0].skins\n\t\tc.save()\n\t}\n\n\tapp_ctx.is_ok = false\n\tc.active_config = &c.configs[for_config_with_index]\n\tc.active_config_idx = for_config_with_index\n\tapp_ctx.is_ok = true\n\n\t$if prod {\n\t\tC.VMProtectEnd()\n\t}\n}\n"}]},"timestamp":1664565639}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/config.v","diagnostics":[]}},"timestamp":1664565639}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565639}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565639}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565653}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":7,"method":"textDocument/completion","params":{"position":{"line":70,"character":13},"context":{"triggerKind":2,"triggerCharacter":":"},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v"}}},"timestamp":1664565653}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":7,"result":[]},"timestamp":1664565653}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565653}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565655}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565734}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/n_menu.v","diagnostics":[]}},"timestamp":1664565734}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565741}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565741}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565751}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565758}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565758}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565758}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565758}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565759}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565761}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565763}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565766}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565777}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565779}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565779}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565780}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565781}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565781}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565781}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565781}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565783}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565784}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565856}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565856}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565859}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565861}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565861}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":8,"method":"textDocument/completion","params":{"position":{"line":47,"character":2},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565861}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":8,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565861}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565861}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":9,"method":"textDocument/completion","params":{"position":{"line":47,"character":3},"context":{"triggerKind":2,"triggerCharacter":"."},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565862}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":9,"result":[]},"timestamp":1664565862}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565862}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":10,"method":"textDocument/completion","params":{"position":{"line":47,"character":4},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565862}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":10,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565862}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565862}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565863}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565863}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565863}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565863}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565864}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":11,"method":"textDocument/completion","params":{"position":{"line":47,"character":10},"context":{"triggerKind":2,"triggerCharacter":"("},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565864}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":11,"result":[]},"timestamp":1664565864}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565864}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565864}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565864}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565866}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565866}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565867}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565868}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565868}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":12,"method":"textDocument/completion","params":{"position":{"line":47,"character":13},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565869}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":12,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"an_shoot(","kind":3,"detail":"pub fn an_shoot(() ool ","insertText":"an_shoot(()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565869}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565869}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":13,"method":"textDocument/completion","params":{"position":{"line":47,"character":15},"context":{"triggerKind":2,"triggerCharacter":","},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565870}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":13,"result":[]},"timestamp":1664565870}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565870}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":14,"method":"textDocument/completion","params":{"position":{"line":47,"character":16},"context":{"triggerKind":2,"triggerCharacter":" "},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565870}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":14,"result":[]},"timestamp":1664565870}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565870}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":15,"method":"textDocument/completion","params":{"position":{"line":47,"character":17},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":15,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565871}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565872}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565872}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":16,"method":"textDocument/completion","params":{"position":{"line":47,"character":29},"context":{"triggerKind":2,"triggerCharacter":"."},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":16,"result":[{"label":"ptr","kind":10,"detail":"Value.ptr voidptr","insertText":"ptr","insertTextFormat":1},{"label":"get","kind":2,"detail":"pub fn (r &Value) get() T","insertText":"get()","insertTextFormat":1},{"label":"set","kind":2,"detail":"pub fn (r &Value) set(with_new_val T)","insertText":"set($0)","insertTextFormat":2}]},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565873}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":17,"method":"textDocument/completion","params":{"position":{"line":47,"character":33},"context":{"triggerKind":2,"triggerCharacter":"("},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":17,"result":[]},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565873}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565875}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565887}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":18,"method":"textDocument/completion","params":{"position":{"line":47,"character":15},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565887}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":18,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"closest_target","kind":6,"detail":"mut closest_target voidptr","insertText":"closest_target","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"an_shoot(","kind":3,"detail":"pub fn an_shoot(() ool ","insertText":"an_shoot(()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565887}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565887}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":19,"method":"textDocument/completion","params":{"position":{"line":47,"character":13},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565888}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":19,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"closest_target","kind":6,"detail":"mut closest_target voidptr","insertText":"closest_target","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"an_shoot(","kind":3,"detail":"pub fn an_shoot(() ool ","insertText":"an_shoot(()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565888}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565888}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565889}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":20,"method":"textDocument/completion","params":{"position":{"line":47,"character":11},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565891}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":20,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"closest_target","kind":6,"detail":"mut closest_target voidptr","insertText":"closest_target","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565891}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565891}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565892}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565933}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565933}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565962}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565962}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565962}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565962}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":21,"method":"textDocument/completion","params":{"position":{"line":53,"character":26},"context":{"triggerKind":2,"triggerCharacter":" "},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565964}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":21,"result":[{"label":"do_a_shoot","kind":10,"detail":"pub mut Engine.do_a_shoot bool","insertText":"do_a_shoot","insertTextFormat":1},{"label":"do_force_bone","kind":10,"detail":"pub mut Engine.do_force_bone bool","insertText":"do_force_bone","insertTextFormat":1},{"label":"do_force_awal","kind":10,"detail":"pub mut Engine.do_force_awal bool","insertText":"do_force_awal","insertTextFormat":1},{"label":"targeted_entities","kind":10,"detail":"pub mut Engine.targeted_entities []TargetedEntity","insertText":"targeted_entities","insertTextFormat":1},{"label":"fov","kind":10,"detail":"pub mut Engine.fov f32","insertText":"fov","insertTextFormat":1},{"label":"is_spraying","kind":10,"detail":"pub mut Engine.is_spraying bool","insertText":"is_spraying","insertTextFormat":1},{"label":"on_frame","kind":2,"detail":"fn (mut e Engine) on_frame()","insertText":"on_frame()","insertTextFormat":1},{"label":"handle_keys","kind":2,"detail":"fn (mut e Engine) handle_keys()","insertText":"handle_keys()","insertTextFormat":1},{"label":"aim_at","kind":2,"detail":"fn (e &Engine) aim_at(ent TargetedEntity)","insertText":"aim_at($0)","insertTextFormat":2},{"label":"is_in_fov","kind":2,"detail":"fn (e &Engine) is_in_fov(bone_pos_on_screen &Vec3) (bool, f32)","insertText":"is_in_fov($0)","insertTextFormat":2},{"label":"adjust_fov_by_zoom","kind":2,"detail":"pub fn (mut e Engine) adjust_fov_by_zoom()","insertText":"adjust_fov_by_zoom()","insertTextFormat":1},{"label":"collect_targeted_ents","kind":2,"detail":"fn (mut e Engine) collect_targeted_ents()","insertText":"collect_targeted_ents()","insertTextFormat":1}]},"timestamp":1664565964}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565964}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565964}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":22,"method":"textDocument/completion","params":{"position":{"line":54,"character":22},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":22,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"a","kind":6,"detail":"a T","insertText":"a","insertTextFormat":1},{"label":"b","kind":6,"detail":"b T","insertText":"b","insertTextFormat":1},{"label":"c","kind":6,"detail":"c","insertText":"c","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565966}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":23,"method":"textDocument/completion","params":{"position":{"line":54,"character":18},"context":{"triggerKind":2,"triggerCharacter":" "},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":23,"result":[]},"timestamp":1664565966}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565966}
{"kind":"recv-request","message":{"jsonrpc":"2.0","id":24,"method":"textDocument/completion","params":{"position":{"line":54,"character":19},"context":{"triggerKind":1},"textDocument":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v"}}},"timestamp":1664565967}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":24,"result":[{"label":"utils","kind":9,"detail":"","insertText":"utils","insertTextFormat":1},{"label":"valve","kind":9,"detail":"","insertText":"valve","insertTextFormat":1},{"label":"offsets","kind":9,"detail":"","insertText":"offsets","insertTextFormat":1},{"label":"math","kind":9,"detail":"","insertText":"math","insertTextFormat":1},{"label":"C","kind":9,"detail":"C symbol definitions","insertText":"C.","insertTextFormat":1},{"label":"e","kind":6,"detail":"mut e Engine","insertText":"e","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"get_sound_for_kill","kind":3,"detail":"fn get_sound_for_kill(kills int) string","insertText":"get_sound_for_kill($0)","insertTextFormat":2},{"label":"KillSound","kind":22,"detail":"struct KillSound","insertText":"KillSound{old_kill:$1, old_kill_hs:$2, kill_streak:$3}","insertTextFormat":2},{"label":"SkinEntry","kind":22,"detail":"struct SkinEntry","insertText":"SkinEntry{definition_index:$1, quality:$2, paint_kit:$3, wear:$4, seed:$5, is_knife:$6}","insertTextFormat":2},{"label":"Skins","kind":22,"detail":"struct Skins","insertText":"Skins{current_selected_in_menu:$1}","insertTextFormat":2},{"label":"EntityCacher","kind":22,"detail":"struct EntityCacher","insertText":"EntityCacher{cache:$1, local_player:$2}","insertTextFormat":2},{"label":"i_can_see","kind":3,"detail":"pub fn i_can_see(player &Player, bones []usize) (bool, valve.CGameTrace)","insertText":"i_can_see($0, $1)","insertTextFormat":2},{"label":"i_can_see_with_offset","kind":3,"detail":"pub fn i_can_see_with_offset(player &Player, bone usize, offset f32) bool","insertText":"i_can_see_with_offset($0, $1, $2)","insertTextFormat":2},{"label":"ent_weapon","kind":3,"detail":"pub fn ent_weapon(for_ent &Player) ?&Weapon_t","insertText":"ent_weapon($0)","insertTextFormat":2},{"label":"BoxData","kind":22,"detail":"struct BoxData","insertText":"BoxData{screen_pos:$1, height:$2, width:$3}","insertTextFormat":2},{"label":"Visuals","kind":22,"detail":"struct Visuals","insertText":"Visuals{bones_to_be_visible_visuals:$1, current_ent:$2, current_ent_is_visible:$3, current_ent_box:$4}","insertTextFormat":2},{"label":"calculate_text","kind":3,"detail":"pub fn calculate_text(with_font int, with_text_len int, and_max_width f32) (u16, f32)","insertText":"calculate_text($0, $1, $2)","insertTextFormat":2},{"label":"Chams","kind":22,"detail":"struct Chams","insertText":"Chams{current_material_name:$1, current_material:$2}","insertTextFormat":2},{"label":"Bone","kind":22,"detail":"struct Bone","insertText":"Bone{pos:$1, id:$2}","insertTextFormat":2},{"label":"TargetedEntity","kind":22,"detail":"struct TargetedEntity","insertText":"TargetedEntity{ent:$1, bones_on_screen:$2, closest_bone:$3}","insertTextFormat":2},{"label":"Engine","kind":22,"detail":"struct Engine","insertText":"Engine{do_a_shoot:$1, do_force_bone:$2, do_force_awal:$3, targeted_entities:$4, fov:$5, is_spraying:$6}","insertTextFormat":2},{"label":"can_shoot","kind":3,"detail":"pub fn can_shoot() bool","insertText":"can_shoot()","insertTextFormat":1},{"label":"Interfaces","kind":22,"detail":"struct Interfaces","insertText":"Interfaces{cdll_int:$1, i_cvar:$2, i_base_client:$3, i_entity_list:$4, i_debug_overlay:$5, i_model_info:$6, i_engine_trace:$7, c_global_vars:$8, c_input:$9, i_surface:$10, i_weapon_system:$11, i_studio_renderer:$12, i_material_system:$13}","insertTextFormat":2},{"label":"menu_height","kind":6,"detail":"const menu_height f32","insertText":"menu_height","insertTextFormat":1},{"label":"menu_width","kind":6,"detail":"const menu_width f32","insertText":"menu_width","insertTextFormat":1},{"label":"item_height","kind":6,"detail":"const item_height int","insertText":"item_height","insertTextFormat":1},{"label":"NMenu","kind":22,"detail":"struct NMenu","insertText":"NMenu{nk_ctx:$1, is_opened:$2, tabs:$3, current_tab:$4, tmp_check:$5, killsounds:$6, configs:$7, engine_keys:$8, engine_bones:$9, chams_materials:$10, weapons_names:$11, knifes:$12, tmp_rename_buff:$13, tmp_rename_len:$14}","insertTextFormat":2},{"label":"get_knife_data","kind":3,"detail":"fn get_knife_data(knife_id int) string","insertText":"get_knife_data($0)","insertTextFormat":2},{"label":"get_material_str","kind":3,"detail":"fn get_material_str(for_material_id int) string","insertText":"get_material_str($0)","insertTextFormat":2},{"label":"get_material_id","kind":3,"detail":"fn get_material_id(for_material_name string) int","insertText":"get_material_id($0)","insertTextFormat":2},{"label":"Config","kind":22,"detail":"struct Config","insertText":"Config{name:$1, knife_changer:$2, bop:$3, spectator:$4, spectator_count_color:$5, spectators_color:$6, killsound:$7, killsound_type:$8, viewmodel_override:$9, viewmodel_override_x:$10, viewmodel_override_y:$11, viewmodel_override_z:$12, viewmodel_override_fov:$13, no_flash:$14, killsay:$15, skins_changer:$16, skins:$17, glow:$18, glow_color_if_visible:$19, glow_color_if_not_visible:$20, box:$21, box_color_if_visible:$22, box_color_if_not_visible:$23, names:$24, hp:$25, names_color_if_visible:$26, names_color_if_not_visible:$27, weapon_name:$28, weapon_clip:$29, weapon_name_color_if_visible:$30, weapon_name_color_if_not_visible:$31, snapline:$32, snapline_color_if_visible:$33, snapline_color_if_not_visible:$34, radar:$35, watermark:$36, watermark_color:$37, indicator:$38, indicator_color_if_on:$39, indicator_color_if_off:$40, fov_circle:$41, fov_circle_color:$42, chams:$43, chams_is_visible_only:$44, chams_material:$45, chams_color_if_visible:$46, chams_color_if_not_visible:$47, engine:$48, fov:$49, engine_adjust_fov_scope:$50, engine_bones_list:$51, engine_force_bone_id:$52, engine_pref_bone_id:$53, engine_automatic_fire_key:$54, engine_force_bone_key:$55, engine_force_awall_key:$56, engine_automatic_fire_key_toggle:$57, engine_force_awall_key_toggle:$58, engine_force_bone_key_toggle:$59, engine_vhv_mode:$60, engine_vhv_aw_factor:$61}","insertTextFormat":2},{"label":"ConfigManager","kind":22,"detail":"struct ConfigManager","insertText":"ConfigManager{configs:$1, active_config:$2, active_config_idx:$3, selected_config_in_menu:$4}","insertTextFormat":2},{"label":"others_on_frame","kind":3,"detail":"pub fn others_on_frame()","insertText":"others_on_frame()","insertTextFormat":1},{"label":"bop","kind":3,"detail":"fn bop()","insertText":"bop()","insertTextFormat":1},{"label":"specs","kind":3,"detail":"pub fn specs()","insertText":"specs()","insertTextFormat":1},{"label":"no_flash","kind":3,"detail":"pub fn no_flash()","insertText":"no_flash()","insertTextFormat":1},{"label":"Line","kind":22,"detail":"struct Line","insertText":"Line{from_pos:$1, to_pos:$2, thickness:$3, color:$4}","insertTextFormat":2},{"label":"new_line","kind":3,"detail":"pub fn new_line(from_pos Vec3, to_pos Vec3, with_thickness f32, and_color Color) Line","insertText":"new_line($0, $1, $2, $3)","insertTextFormat":2},{"label":"Text","kind":22,"detail":"struct Text","insertText":"Text{pos:$1, content:$2, bold:$3, shadow:$4, color:$5, font_size:$6, format_falgs:$7}","insertTextFormat":2},{"label":"new_text","kind":3,"detail":"pub fn new_text(at_pos Vec3, with_content string, with_font_size u16, is_bold bool, has_shadow bool, with_fmt_flags int, and_color Color) Text","insertText":"new_text($0, $1, $2, $3, $4, $5, $6)","insertTextFormat":2},{"label":"Rectangle","kind":22,"detail":"struct Rectangle","insertText":"Rectangle{pos:$1, height:$2, width:$3, thickness:$4, outline_thickness:$5, color:$6}","insertTextFormat":2},{"label":"new_rectangle","kind":3,"detail":"pub fn new_rectangle(at_pos Vec3, with_height f32, with_width f32, with_thickness f32, with_outline_thickness f32, and_color Color) Rectangle","insertText":"new_rectangle($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"Circle","kind":22,"detail":"struct Circle","insertText":"Circle{at_pos:$1, thickness:$2, radius:$3, color:$4}","insertTextFormat":2},{"label":"new_circle","kind":3,"detail":"pub fn new_circle(at_pos Vec3, with_thickness f32, with_radius f32, and_color Color) Circle","insertText":"new_circle($0, $1, $2, $3)","insertTextFormat":2},{"label":"Drawable","kind":8,"detail":"Drawable","insertText":"Drawable","insertTextFormat":1},{"label":"HookEntry","kind":22,"detail":"struct HookEntry","insertText":"HookEntry{name:$1, original_addr:$2, original_save:$3, hooked:$4}","insertTextFormat":2},{"label":"add_hook","kind":3,"detail":"fn add_hook(with_name string, with_og_add voidptr, and_hkd_fn voidptr) HookEntry","insertText":"add_hook($0, $1, $2)","insertTextFormat":2},{"label":"Hooks","kind":22,"detail":"struct Hooks","insertText":"Hooks{frame_stage_notify:$1, end_scene:$2, reset:$3, wnd_proc:$4, set_viewmodel_offets:$5, get_viewmodel_fov:$6, lock_cursor:$7, draw_model:$8, ret_add_check:$9}","insertTextFormat":2},{"label":"hk_frame_stage_notify","kind":3,"detail":"fn hk_frame_stage_notify(stage u32)","insertText":"hk_frame_stage_notify($0)","insertTextFormat":2},{"label":"hk_end_scene","kind":3,"detail":"fn hk_end_scene(dev voidptr) bool","insertText":"hk_end_scene($0)","insertTextFormat":2},{"label":"hk_reset","kind":3,"detail":"fn hk_reset(dev voidptr, params voidptr) int","insertText":"hk_reset($0, $1)","insertTextFormat":2},{"label":"hk_set_viewmodel_offets","kind":3,"detail":"fn hk_set_viewmodel_offets(ecx voidptr, edx voidptr, smt int, x f32, y f32, z f32) int","insertText":"hk_set_viewmodel_offets($0, $1, $2, $3, $4, $5)","insertTextFormat":2},{"label":"hk_get_viewmodel_fov","kind":3,"detail":"fn hk_get_viewmodel_fov() f32","insertText":"hk_get_viewmodel_fov()","insertTextFormat":1},{"label":"hk_wnd_proc","kind":3,"detail":"fn hk_wnd_proc(with_hwnd C.HWND, with_msg u32, with_wparam u32, and_lparam int) bool","insertText":"hk_wnd_proc($0, $1, $2, $3)","insertTextFormat":2},{"label":"hk_lock_cursor","kind":3,"detail":"fn hk_lock_cursor(ecx voidptr, edx voidptr)","insertText":"hk_lock_cursor($0, $1)","insertTextFormat":2},{"label":"hk_draw_model","kind":3,"detail":"fn hk_draw_model(ecx voidptr, edx voidptr, result voidptr, info &CDrawModelInfo, bones voidptr, flex_weights &f32, flex_deleyed_weight &f32, model_origin &Vec3, flags int)","insertText":"hk_draw_model($0, $1, $2, $3, $4, $5, $6, $7, $8)","insertTextFormat":2},{"label":"hk_ret_add_check","kind":3,"detail":"fn hk_ret_add_check(ecx voidptr, edx voidptr, mod_name &u8) bool","insertText":"hk_ret_add_check($0, $1, $2)","insertTextFormat":2},{"label":"RenderQueue","kind":22,"detail":"pub struct RenderQueue","insertText":"RenderQueue{queue:$1}","insertTextFormat":2},{"label":"C.FILE","kind":22,"detail":"struct C.FILE","insertText":"C.FILE{}","insertTextFormat":1},{"label":"App","kind":22,"detail":"struct App","insertText":"App{h_mod:$1, h_wnd:$2, h_client:$3, wnd_height:$4, wnd_width:$5, v_mod:$6, file:$7, interfaces:$8, hooks:$9, d3d:$10, rnd_queue:$11, ent_cacher:$12, config:$13, engine:$14, visuals:$15, menu:$16, chams:$17, kill_sound:$18, skins:$19, is_ok:$20}","insertTextFormat":2},{"label":"app","kind":3,"detail":"fn app() &App","insertText":"app()","insertTextFormat":1},{"label":"app_ctx","kind":6,"detail":"mut app_ctx &App","insertText":"app_ctx","insertTextFormat":1},{"label":"combo_vec","kind":6,"detail":"combo_vec C.nk_vec2","insertText":"combo_vec","insertTextFormat":1},{"label":"current_index","kind":6,"detail":"mut current_index int","insertText":"current_index","insertTextFormat":1},{"label":"tmp_colf","kind":6,"detail":"mut tmp_colf C.nk_colorf","insertText":"tmp_colf","insertTextFormat":1},{"label":"color_vec","kind":6,"detail":"color_vec C.nk_vec2","insertText":"color_vec","insertTextFormat":1},{"label":"force_attack","kind":6,"detail":"mut force_attack Value","insertText":"force_attack","insertTextFormat":1},{"label":"weapon","kind":6,"detail":"weapon &Weapon_t","insertText":"weapon","insertTextFormat":1},{"label":"ents","kind":6,"detail":"ents &App","insertText":"ents","insertTextFormat":1},{"label":"bone_pos","kind":6,"detail":"mut bone_pos","insertText":"bone_pos","insertTextFormat":1},{"label":"bone_screen","kind":6,"detail":"mut bone_screen","insertText":"bone_screen","insertTextFormat":1},{"label":"target","kind":6,"detail":"mut target TargetedEntity","insertText":"target","insertTextFormat":1},{"label":"bones_list","kind":6,"detail":"mut bones_list &App","insertText":"bones_list","insertTextFormat":1},{"label":"a","kind":6,"detail":"a T","insertText":"a","insertTextFormat":1},{"label":"b","kind":6,"detail":"b T","insertText":"b","insertTextFormat":1},{"label":"c","kind":6,"detail":"c","insertText":"c","insertTextFormat":1},{"label":"string","kind":22,"detail":"pub struct string","insertText":"string","insertTextFormat":1},{"label":"array","kind":22,"detail":"pub struct array","insertText":"array","insertTextFormat":1},{"label":"map","kind":22,"detail":"pub struct map","insertText":"map","insertTextFormat":1},{"label":"IError","kind":8,"detail":"IError","insertText":"IError","insertTextFormat":1},{"label":"gc_check_leaks","kind":3,"detail":"pub fn gc_check_leaks()","insertText":"gc_check_leaks","insertTextFormat":1},{"label":"Error","kind":22,"detail":"pub struct Error","insertText":"Error","insertTextFormat":1},{"label":"str","kind":3,"detail":"pub fn str() string","insertText":"str","insertTextFormat":1},{"label":"copy","kind":3,"detail":"pub fn copy(mut dst []u8, src []u8) int","insertText":"copy","insertTextFormat":1},{"label":"utf8_getchar","kind":3,"detail":"pub fn utf8_getchar() int","insertText":"utf8_getchar","insertTextFormat":1},{"label":"utf8_char_len","kind":3,"detail":"pub fn utf8_char_len(b u8) int","insertText":"utf8_char_len","insertTextFormat":1},{"label":"utf32_to_str","kind":3,"detail":"pub fn utf32_to_str(code u32) string","insertText":"utf32_to_str","insertTextFormat":1},{"label":"utf8_str_visible_length","kind":3,"detail":"pub fn utf8_str_visible_length(s string) int","insertText":"utf8_str_visible_length","insertTextFormat":1},{"label":"SortedMap","kind":22,"detail":"pub struct SortedMap","insertText":"SortedMap","insertTextFormat":1},{"label":"compare_strings","kind":3,"detail":"pub fn compare_strings(a &string, b &string) int","insertText":"compare_strings","insertTextFormat":1},{"label":"c_error_number_str","kind":3,"detail":"pub fn c_error_number_str(errnum int) string","insertText":"c_error_number_str","insertTextFormat":1},{"label":"eprintln","kind":3,"detail":"pub fn eprintln(s string)","insertText":"eprintln","insertTextFormat":1},{"label":"eprint","kind":3,"detail":"pub fn eprint(s string)","insertText":"eprint","insertTextFormat":1},{"label":"flush_stdout","kind":3,"detail":"pub fn flush_stdout()","insertText":"flush_stdout","insertTextFormat":1},{"label":"flush_stderr","kind":3,"detail":"pub fn flush_stderr()","insertText":"flush_stderr","insertTextFormat":1},{"label":"vcalloc","kind":3,"detail":"pub fn vcalloc(n isize) &u8","insertText":"vcalloc","insertTextFormat":1},{"label":"vcalloc_noscan","kind":3,"detail":"pub fn vcalloc_noscan(n isize) &u8","insertText":"vcalloc_noscan","insertTextFormat":1},{"label":"print_backtrace","kind":3,"detail":"pub fn print_backtrace()","insertText":"print_backtrace","insertTextFormat":1},{"label":"StrIntpMem","kind":22,"detail":"pub struct StrIntpMem","insertText":"StrIntpMem","insertTextFormat":1},{"label":"get_str_intp_u64_format","kind":3,"detail":"pub fn get_str_intp_u64_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u64","insertText":"get_str_intp_u64_format","insertTextFormat":1},{"label":"get_str_intp_u32_format","kind":3,"detail":"pub fn get_str_intp_u32_format(fmt_type StrIntpType, in_width int, in_precision int, in_tail_zeros bool, in_sign bool, in_pad_ch byte, in_base int, in_upper_case bool) u32","insertText":"get_str_intp_u32_format","insertTextFormat":1},{"label":"StrIntpData","kind":22,"detail":"pub struct StrIntpData","insertText":"StrIntpData","insertTextFormat":1},{"label":"StrIntpCgenData","kind":22,"detail":"pub struct StrIntpCgenData","insertText":"StrIntpCgenData","insertTextFormat":1},{"label":"si_s_code","kind":6,"detail":"pub const si_s_code string","insertText":"si_s_code","insertTextFormat":1},{"label":"si_g32_code","kind":6,"detail":"pub const si_g32_code string","insertText":"si_g32_code","insertTextFormat":1},{"label":"si_g64_code","kind":6,"detail":"pub const si_g64_code string","insertText":"si_g64_code","insertTextFormat":1},{"label":"VAssertMetaInfo","kind":22,"detail":"pub struct VAssertMetaInfo","insertText":"VAssertMetaInfo","insertTextFormat":1},{"label":"MethodArgs","kind":22,"detail":"pub struct MethodArgs","insertText":"MethodArgs","insertTextFormat":1},{"label":"FunctionData","kind":22,"detail":"pub struct FunctionData","insertText":"FunctionData","insertTextFormat":1},{"label":"FieldData","kind":22,"detail":"pub struct FieldData","insertText":"FieldData","insertTextFormat":1},{"label":"StructAttribute","kind":22,"detail":"pub struct StructAttribute","insertText":"StructAttribute","insertTextFormat":1},{"label":"ptr_str","kind":3,"detail":"pub fn ptr_str(ptr voidptr) string","insertText":"ptr_str","insertTextFormat":1}]},"timestamp":1664565967}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565967}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565967}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565967}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565968}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565969}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565980}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664565980}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664566036}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664566037}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664566037}
{"kind":"send-response","message":{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/fleur/Documents/prod/projects/2022/golphook/golphook/engine.v","diagnostics":[]}},"timestamp":1664566038}
{"kind":"send-response","message":{"jsonrpc":"2.0","id":null,"result":null},"timestamp":1664566966}