diff --git a/mods/ctf_guns/LICENSE b/mods/game/ctf_guns/LICENSE similarity index 100% rename from mods/ctf_guns/LICENSE rename to mods/game/ctf_guns/LICENSE diff --git a/mods/ctf_guns/README.md b/mods/game/ctf_guns/README.md similarity index 100% rename from mods/ctf_guns/README.md rename to mods/game/ctf_guns/README.md diff --git a/mods/ctf_guns/ctf_core/cooldowns.lua b/mods/game/ctf_guns/ctf_core/cooldowns.lua similarity index 100% rename from mods/ctf_guns/ctf_core/cooldowns.lua rename to mods/game/ctf_guns/ctf_core/cooldowns.lua diff --git a/mods/ctf_guns/ctf_core/helpers.lua b/mods/game/ctf_guns/ctf_core/helpers.lua similarity index 100% rename from mods/ctf_guns/ctf_core/helpers.lua rename to mods/game/ctf_guns/ctf_core/helpers.lua diff --git a/mods/ctf_guns/ctf_core/init.lua b/mods/game/ctf_guns/ctf_core/init.lua similarity index 100% rename from mods/ctf_guns/ctf_core/init.lua rename to mods/game/ctf_guns/ctf_core/init.lua diff --git a/mods/ctf_guns/ctf_core/mod.conf b/mods/game/ctf_guns/ctf_core/mod.conf similarity index 100% rename from mods/ctf_guns/ctf_core/mod.conf rename to mods/game/ctf_guns/ctf_core/mod.conf diff --git a/mods/ctf_guns/ctf_core/privileges.lua b/mods/game/ctf_guns/ctf_core/privileges.lua similarity index 100% rename from mods/ctf_guns/ctf_core/privileges.lua rename to mods/game/ctf_guns/ctf_core/privileges.lua diff --git a/mods/ctf_guns/ctf_ranged/custom_controls.lua b/mods/game/ctf_guns/ctf_ranged/custom_controls.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/custom_controls.lua rename to mods/game/ctf_guns/ctf_ranged/custom_controls.lua diff --git a/mods/ctf_guns/ctf_ranged/energy_gen.lua b/mods/game/ctf_guns/ctf_ranged/energy_gen.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/energy_gen.lua rename to mods/game/ctf_guns/ctf_ranged/energy_gen.lua diff --git a/mods/ctf_guns/ctf_ranged/init.lua b/mods/game/ctf_guns/ctf_ranged/init.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/init.lua rename to mods/game/ctf_guns/ctf_ranged/init.lua diff --git a/mods/ctf_guns/ctf_ranged/mod.conf b/mods/game/ctf_guns/ctf_ranged/mod.conf similarity index 100% rename from mods/ctf_guns/ctf_ranged/mod.conf rename to mods/game/ctf_guns/ctf_ranged/mod.conf diff --git a/mods/ctf_guns/ctf_ranged/readme.md b/mods/game/ctf_guns/ctf_ranged/readme.md similarity index 100% rename from mods/ctf_guns/ctf_ranged/readme.md rename to mods/game/ctf_guns/ctf_ranged/readme.md diff --git a/mods/ctf_guns/ctf_ranged/settings.lua b/mods/game/ctf_guns/ctf_ranged/settings.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/settings.lua rename to mods/game/ctf_guns/ctf_ranged/settings.lua diff --git a/mods/ctf_guns/ctf_ranged/settingtypes.txt b/mods/game/ctf_guns/ctf_ranged/settingtypes.txt similarity index 100% rename from mods/ctf_guns/ctf_ranged/settingtypes.txt rename to mods/game/ctf_guns/ctf_ranged/settingtypes.txt diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_ashotfir.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_ashotfir.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_ashotfir.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_ashotfir.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_click.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_click.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_click.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_click.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_deagle.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_deagle.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_deagle.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_deagle.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_dzap.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_dzap.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_dzap.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_dzap.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_explode.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_explode.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_explode.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_explode.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_m16fire.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_m16fire.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_m16fire.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_m16fire.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_m60fire.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_m60fire.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_m60fire.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_m60fire.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_mk23fire.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_mk23fire.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_mk23fire.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_mk23fire.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_mp5fire.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_mp5fire.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_mp5fire.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_mp5fire.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_pdudegun.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_pdudegun.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_pdudegun.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_pdudegun.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_pistol.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_pistol.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_pistol.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_pistol.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_plasma.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_plasma.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_plasma.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_plasma.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_reload.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_reload.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_reload.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_reload.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_rifle.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_rifle.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_rifle.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_rifle.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_rocket_fire.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_rocket_fire.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_rocket_fire.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_rocket_fire.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_shotgun.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_shotgun.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_shotgun.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_shotgun.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_terrgun.wav b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_terrgun.wav similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_terrgun.wav rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_terrgun.wav diff --git a/mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_throw.ogg b/mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_throw.ogg similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/ctf_ranged_throw.ogg rename to mods/game/ctf_guns/ctf_ranged/sounds/ctf_ranged_throw.ogg diff --git a/mods/ctf_guns/ctf_ranged/sounds/license.txt b/mods/game/ctf_guns/ctf_ranged/sounds/license.txt similarity index 100% rename from mods/ctf_guns/ctf_ranged/sounds/license.txt rename to mods/game/ctf_guns/ctf_ranged/sounds/license.txt diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ammo.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ammo.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ammo.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ammo.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_bullet.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_bullet.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_bullet.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_bullet.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_bullethole.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_bullethole.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_bullethole.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_bullethole.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_eammo.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_eammo.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_eammo.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_eammo.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullet.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullet.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullet.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullet.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullethole.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullethole.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullethole.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_ebullethole.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_echarge.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_echarge.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_echarge.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_echarge.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_milkor_apollo.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_milkor_apollo.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_milkor_apollo.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_milkor_apollo.png diff --git a/mods/ctf_guns/ctf_ranged/textures/ctf_ranged_mini14.png b/mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_mini14.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/ctf_ranged_mini14.png rename to mods/game/ctf_guns/ctf_ranged/textures/ctf_ranged_mini14.png diff --git a/mods/ctf_guns/ctf_ranged/textures/license.txt b/mods/game/ctf_guns/ctf_ranged/textures/license.txt similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/license.txt rename to mods/game/ctf_guns/ctf_ranged/textures/license.txt diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_10mm.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_10mm.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_10mm.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_10mm.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_308winchester.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_308winchester.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_308winchester.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_308winchester.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_357.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_357.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_357.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_357.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_408cheytac.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_408cheytac.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_408cheytac.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_408cheytac.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_40mm.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_40mm.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_40mm.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_40mm.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_44.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_44.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_44.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_44.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_45acp.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_45acp.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_45acp.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_45acp.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_50ae.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_50ae.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_50ae.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_50ae.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_556mm.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_556mm.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_556mm.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_556mm.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_762mm.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_762mm.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_762mm.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_762mm.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_9mm.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_9mm.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_9mm.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_9mm.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_aa12_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ak47_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_antigun_block.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_antigun_block.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_antigun_block.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_antigun_block.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_arifle_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_arifle_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_arifle_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_arifle_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_assaultrifle_mag.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_assaultrifle_mag.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_assaultrifle_mag.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_assaultrifle_mag.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_noclip.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_noclip.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_noclip.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_noclip.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_awp_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_awp_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_side.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_side.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_side.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_side.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_top.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_top.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_top.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_barrel_top.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_benelli_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_beretta_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_blood.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blood.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_blood.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blood.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_blood_alt.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blood_alt.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_blood_alt.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blood_alt.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_blue_ray.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blue_ray.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_blue_ray.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_blue_ray.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_boltaction_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_boltaction_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_boltaction_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_boltaction_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_broken_glass.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_broken_glass.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_broken_glass.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_broken_glass.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_bronze_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bronze_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_bronze_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bronze_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_buckball.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_buckball.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_buckball.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_buckball.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_bullet_fly.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bullet_fly.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_bullet_fly.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bullet_fly.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_bullethole.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bullethole.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_bullethole.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bullethole.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_bulletshot.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bulletshot.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_bulletshot.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_bulletshot.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_crit.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_crit.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_crit.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_crit.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_crithit.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_crithit.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_crithit.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_crithit.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_deagle_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_diamond_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_diamond_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_diamond_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_diamond_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_drum_mag.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_drum_mag.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_drum_mag.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_drum_mag.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_electroball.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_electroball.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_electroball.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_electroball.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_ammo_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_ammo_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_ammo_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_ammo_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_gun_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_gun_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_gun_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_emergency_gun_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_empty_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_empty_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_empty_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_empty_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_empty_shell.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_empty_shell.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_empty_shell.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_empty_shell.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_energycharge.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_energycharge.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_energycharge.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_energycharge.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_fire_particle.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_fire_particle.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_fire_particle.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_fire_particle.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_force_blast.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_force_blast.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_force_blast.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_force_blast.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_force_bullet.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_force_bullet.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_force_bullet.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_force_bullet.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_forcegun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_forcegun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_forcegun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_forcegun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_g11.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g11.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_g11.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g11.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_g36_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_g36_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_bottom.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_bottom.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_bottom.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_bottom.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_side.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_side.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_side.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_side.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_top.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_top.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_generator_top.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_generator_top.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_glass_shards.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glass_shards.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_glass_shards.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glass_shards.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_glock17_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_deagle_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_golden_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_golden_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_green_ray.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_green_ray.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_green_ray.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_green_ray.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_gun_power_core.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gun_power_core.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_gun_power_core.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gun_power_core.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart1.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart1.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart1.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart1.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart2.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart2.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart2.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart2.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart3.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart3.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart3.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunpart3.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunsteel_ingot.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunsteel_ingot.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_gunsteel_ingot.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_gunsteel_ingot.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade_nopin.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade_nopin.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade_nopin.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hand_grenade_nopin.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_black.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_black.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_black.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_black.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_white.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_white.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_white.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_handgun_mag_white.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_headhit.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_headhit.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_headhit.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_headhit.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_headshot.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_headshot.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_headshot.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_headshot.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_heavy_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_heavy_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_heavy_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_heavy_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_hit.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hit.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_hit.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_hit.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_invisible.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_invisible.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_invisible.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_invisible.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_jackhammer_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_javelin.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_javelin.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_javelin.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_javelin.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_kriss_sv_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_blaster.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_blaster.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_blaster.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_blaster.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_rifle.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_rifle.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_rifle.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_rifle.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_shotgun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_shotgun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_laser_shotgun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_laser_shotgun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_leaf.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_leaf.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_leaf.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_leaf.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_luger_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_luger_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m16_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m16_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m1991_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_noclip.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_noclip.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_noclip.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_noclip.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m200_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m200_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m60_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m60_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_m79_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_m79_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_mag.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_mag.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_mag.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_machinepistol_mag.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_handgun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_handgun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_handgun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_handgun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_mp5.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_mp5.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_mp5.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_mp5.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_smg.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_smg.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_smg.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_magazine_smg.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_makarov_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mese_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mese_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mese_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mese_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_milkor_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_minigun_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp40_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_mp5_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_pin.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_pin.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_pin.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_pin.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_plastic_sheet.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_plastic_sheet.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_plastic_sheet.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_plastic_sheet.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_power_particle.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_power_particle.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_power_particle.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_power_particle.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_python.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_python.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_python_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_python_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_python_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_python_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_python_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_blue.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_blue.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_blue.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_blue.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_green.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_green.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_green.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_green.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_red.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_red.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ray_red.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ray_red.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_red_ray.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_red_ray.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_red_ray.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_red_ray.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_remington_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_remington_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_revolver_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_revolver_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_revolver_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_revolver_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_mag.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_mag.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_mag.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifle_mag.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifleshot.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifleshot.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rifleshot.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rifleshot.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly_alternate.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly_alternate.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly_alternate.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rocket_fly_alternate.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpg_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_rpk_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_scar_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scar_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_scopehud.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scopehud.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_scopehud.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_scopehud.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shell.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shell.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shell.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shell.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_grenade.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_grenade.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_grenade.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_grenade.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_shotgun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_shotgun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_shotgun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_shotgun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_white.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_white.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_white.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shelldrop_white.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_shotgun_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shotgun_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_shotgun_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_shotgun_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_smg_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_smg_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_smg_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_smg_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_spark.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spark.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_spark.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spark.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_spas12_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_squirtgun_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_sriffle_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_sriffle_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_sriffle_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_sriffle_img.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_steel_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_steel_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_steel_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_steel_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_stone_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_stone_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_stone_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_stone_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_noclip.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_noclip.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_noclip.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_noclip.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_svd_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_svd_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_taurus_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tec9_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thompson_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_thrown_javelin.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thrown_javelin.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_thrown_javelin.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_thrown_javelin.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_tmp_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ultra_gunsteel_ingot.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ultra_gunsteel_ingot.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ultra_gunsteel_ingot.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ultra_gunsteel_ingot.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_ump_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_ump_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_icon.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_icon.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_icon.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_icon.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_rld.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_rld.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_rld.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_uzi_rld.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_wooden_shuriken.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_wooden_shuriken.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_wooden_shuriken.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_wooden_shuriken.png diff --git a/mods/ctf_guns/ctf_ranged/textures/rangedweapons_yeetable_img.png b/mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_yeetable_img.png similarity index 100% rename from mods/ctf_guns/ctf_ranged/textures/rangedweapons_yeetable_img.png rename to mods/game/ctf_guns/ctf_ranged/textures/rangedweapons_yeetable_img.png diff --git a/mods/ctf_guns/ctf_ranged/wep_defns.lua b/mods/game/ctf_guns/ctf_ranged/wep_defns.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/wep_defns.lua rename to mods/game/ctf_guns/ctf_ranged/wep_defns.lua diff --git a/mods/ctf_guns/ctf_ranged/wep_logic.lua b/mods/game/ctf_guns/ctf_ranged/wep_logic.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/wep_logic.lua rename to mods/game/ctf_guns/ctf_ranged/wep_logic.lua diff --git a/mods/ctf_guns/ctf_ranged/wep_recipes.lua b/mods/game/ctf_guns/ctf_ranged/wep_recipes.lua similarity index 100% rename from mods/ctf_guns/ctf_ranged/wep_recipes.lua rename to mods/game/ctf_guns/ctf_ranged/wep_recipes.lua diff --git a/mods/ctf_guns/darkness_nerf/init.lua b/mods/game/ctf_guns/darkness_nerf/init.lua similarity index 100% rename from mods/ctf_guns/darkness_nerf/init.lua rename to mods/game/ctf_guns/darkness_nerf/init.lua diff --git a/mods/ctf_guns/darkness_nerf/mod.conf b/mods/game/ctf_guns/darkness_nerf/mod.conf similarity index 100% rename from mods/ctf_guns/darkness_nerf/mod.conf rename to mods/game/ctf_guns/darkness_nerf/mod.conf diff --git a/mods/ctf_guns/grenades/api.md b/mods/game/ctf_guns/grenades/api.md similarity index 100% rename from mods/ctf_guns/grenades/api.md rename to mods/game/ctf_guns/grenades/api.md diff --git a/mods/ctf_guns/grenades/grenades.lua b/mods/game/ctf_guns/grenades/grenades.lua similarity index 100% rename from mods/ctf_guns/grenades/grenades.lua rename to mods/game/ctf_guns/grenades/grenades.lua diff --git a/mods/ctf_guns/grenades/init.lua b/mods/game/ctf_guns/grenades/init.lua similarity index 100% rename from mods/ctf_guns/grenades/init.lua rename to mods/game/ctf_guns/grenades/init.lua diff --git a/mods/ctf_guns/grenades/license b/mods/game/ctf_guns/grenades/license similarity index 100% rename from mods/ctf_guns/grenades/license rename to mods/game/ctf_guns/grenades/license diff --git a/mods/ctf_guns/grenades/mod.conf b/mods/game/ctf_guns/grenades/mod.conf similarity index 100% rename from mods/ctf_guns/grenades/mod.conf rename to mods/game/ctf_guns/grenades/mod.conf diff --git a/mods/ctf_guns/grenades/readme.md b/mods/game/ctf_guns/grenades/readme.md similarity index 100% rename from mods/ctf_guns/grenades/readme.md rename to mods/game/ctf_guns/grenades/readme.md diff --git a/mods/ctf_guns/grenades/sounds/grenades_explode.ogg b/mods/game/ctf_guns/grenades/sounds/grenades_explode.ogg similarity index 100% rename from mods/ctf_guns/grenades/sounds/grenades_explode.ogg rename to mods/game/ctf_guns/grenades/sounds/grenades_explode.ogg diff --git a/mods/ctf_guns/grenades/sounds/grenades_glasslike_break.ogg b/mods/game/ctf_guns/grenades/sounds/grenades_glasslike_break.ogg similarity index 100% rename from mods/ctf_guns/grenades/sounds/grenades_glasslike_break.ogg rename to mods/game/ctf_guns/grenades/sounds/grenades_glasslike_break.ogg diff --git a/mods/ctf_guns/grenades/sounds/grenades_hiss.ogg b/mods/game/ctf_guns/grenades/sounds/grenades_hiss.ogg similarity index 100% rename from mods/ctf_guns/grenades/sounds/grenades_hiss.ogg rename to mods/game/ctf_guns/grenades/sounds/grenades_hiss.ogg diff --git a/mods/ctf_guns/grenades/sounds/license.txt b/mods/game/ctf_guns/grenades/sounds/license.txt similarity index 100% rename from mods/ctf_guns/grenades/sounds/license.txt rename to mods/game/ctf_guns/grenades/sounds/license.txt diff --git a/mods/ctf_guns/grenades/textures/grenades_boom.png b/mods/game/ctf_guns/grenades/textures/grenades_boom.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_boom.png rename to mods/game/ctf_guns/grenades/textures/grenades_boom.png diff --git a/mods/ctf_guns/grenades/textures/grenades_flashbang.png b/mods/game/ctf_guns/grenades/textures/grenades_flashbang.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_flashbang.png rename to mods/game/ctf_guns/grenades/textures/grenades_flashbang.png diff --git a/mods/ctf_guns/grenades/textures/grenades_frag.png b/mods/game/ctf_guns/grenades/textures/grenades_frag.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_frag.png rename to mods/game/ctf_guns/grenades/textures/grenades_frag.png diff --git a/mods/ctf_guns/grenades/textures/grenades_frag_sticky.png b/mods/game/ctf_guns/grenades/textures/grenades_frag_sticky.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_frag_sticky.png rename to mods/game/ctf_guns/grenades/textures/grenades_frag_sticky.png diff --git a/mods/ctf_guns/grenades/textures/grenades_smoke.png b/mods/game/ctf_guns/grenades/textures/grenades_smoke.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_smoke.png rename to mods/game/ctf_guns/grenades/textures/grenades_smoke.png diff --git a/mods/ctf_guns/grenades/textures/grenades_smoke_grenade.png b/mods/game/ctf_guns/grenades/textures/grenades_smoke_grenade.png similarity index 100% rename from mods/ctf_guns/grenades/textures/grenades_smoke_grenade.png rename to mods/game/ctf_guns/grenades/textures/grenades_smoke_grenade.png diff --git a/mods/ctf_guns/grenades/textures/license b/mods/game/ctf_guns/grenades/textures/license similarity index 100% rename from mods/ctf_guns/grenades/textures/license rename to mods/game/ctf_guns/grenades/textures/license diff --git a/mods/ctf_guns/modpack.txt b/mods/game/ctf_guns/modpack.txt similarity index 100% rename from mods/ctf_guns/modpack.txt rename to mods/game/ctf_guns/modpack.txt diff --git a/mods/ctf_guns/rawf/.gitignore b/mods/game/ctf_guns/rawf/.gitignore similarity index 100% rename from mods/ctf_guns/rawf/.gitignore rename to mods/game/ctf_guns/rawf/.gitignore diff --git a/mods/ctf_guns/rawf/.luacheckrc b/mods/game/ctf_guns/rawf/.luacheckrc similarity index 100% rename from mods/ctf_guns/rawf/.luacheckrc rename to mods/game/ctf_guns/rawf/.luacheckrc diff --git a/mods/ctf_guns/rawf/API.md b/mods/game/ctf_guns/rawf/API.md similarity index 100% rename from mods/ctf_guns/rawf/API.md rename to mods/game/ctf_guns/rawf/API.md diff --git a/mods/ctf_guns/rawf/LICENSE b/mods/game/ctf_guns/rawf/LICENSE similarity index 100% rename from mods/ctf_guns/rawf/LICENSE rename to mods/game/ctf_guns/rawf/LICENSE diff --git a/mods/ctf_guns/rawf/README.md b/mods/game/ctf_guns/rawf/README.md similarity index 100% rename from mods/ctf_guns/rawf/README.md rename to mods/game/ctf_guns/rawf/README.md diff --git a/mods/ctf_guns/rawf/ammo.lua b/mods/game/ctf_guns/rawf/ammo.lua similarity index 100% rename from mods/ctf_guns/rawf/ammo.lua rename to mods/game/ctf_guns/rawf/ammo.lua diff --git a/mods/ctf_guns/rawf/bullet.lua b/mods/game/ctf_guns/rawf/bullet.lua similarity index 100% rename from mods/ctf_guns/rawf/bullet.lua rename to mods/game/ctf_guns/rawf/bullet.lua diff --git a/mods/ctf_guns/rawf/init.lua b/mods/game/ctf_guns/rawf/init.lua similarity index 100% rename from mods/ctf_guns/rawf/init.lua rename to mods/game/ctf_guns/rawf/init.lua diff --git a/mods/ctf_guns/rawf/mod.conf b/mods/game/ctf_guns/rawf/mod.conf similarity index 100% rename from mods/ctf_guns/rawf/mod.conf rename to mods/game/ctf_guns/rawf/mod.conf diff --git a/mods/game/main/init.lua b/mods/game/main/init.lua new file mode 100644 index 0000000..e39254f --- /dev/null +++ b/mods/game/main/init.lua @@ -0,0 +1,406 @@ +local alive_players = {} +local map_data = {} -- constrict the map data to this file + +local spawn_pos = vector.new(-100, -9.6, -100) + +local match_state = "not_started" -- not_started, pre_match, in_progress, post_match + +local function save_player_data(player) + local skins = player:get_properties().textures + + -- probably the invisible skin so dont save it + if skins[1] == "blank.png" then + return + end + + player:get_meta():set_string("skin", core.serialize(skins)) +end + +local function load_player_data(player) + local skins = core.deserialize(player:get_meta():get_string("skin")) + + player:set_properties({ + visual = "mesh", + textures = skins + }) +end + +function make_player_invisible(player) + save_player_data(player) + player:set_properties({ + pointable = false, + visual = "mesh", + textures = {"blank.png"}, + }) + + playertag.set(player, playertag.TYPE_BUILTIN, {a = 0}) +end + +function give_player_items(player) + local class = player:get_meta():get_string("class") + local inv = player:get_inventory() + + inv:set_list("main", {}) + + if class == "sniper" then + inv:add_item("main", "ctf_ranged:m200_loaded") + inv:add_item("main", "default:sword_stone") + inv:add_item("main", "ctf_ranged:ammo 100") + elseif class == "assault" then + inv:add_item("main", "ctf_ranged:ak47_loaded") + inv:add_item("main", "ctf_ranged:glock17_loaded") + inv:add_item("main", "ctf_ranged:ammo 100") + elseif class == "shotgun" then + inv:add_item("main", "ctf_ranged:benelli_loaded") + inv:add_item("main", "ctf_ranged:glock17_loaded") + inv:add_item("main", "ctf_ranged:ammo 100") + end +end + +function set_player_mode(player, mode) + player:get_meta():set_string("mode", mode) + + local player_name = player:get_player_name() + local privs = core.get_player_privs(player_name) + + if mode == "normal" then + player:set_properties({ + pointable = true, -- allow players to be killable after the match starts + }) + + load_player_data(player) + privs.noclip, privs.fast, privs.fly, privs.interact = false, false, false, true + + playertag.set(player, playertag.TYPE_ENTITY, {a = 255, r = 255, g = 255, b = 255}) + + player:set_inventory_formspec([[ + size[8,4] + list[current_player;main;0,0;8,1;] + list[current_player;main;0,1.25;8,3;8] + listring[current_player;main] + ]]) + + player:hud_set_flags({ + hotbar = true, + healthbar = true, + breathbar = true, + }) + elseif mode == "spectator" then + privs.noclip, privs.fast, privs.fly, privs.interact = true, true, true, false + + make_player_invisible(player) + + core.chat_send_player(player_name, core.colorize("blue", "You are now a spectator.")) + + player:set_inventory_formspec([[ + size[8,4] + list[current_player;main;0,0;8,1;] + list[current_player;main;0,1.25;8,3;8] + listring[current_player;main] + ]]) + + player:hud_set_flags({ + hotbar = false, + healthbar = false, + breathbar = false, + }) + + elseif mode == "pre_match" then + privs.noclip, privs.fast, privs.fly, privs.interact = false, true, false, false -- allow fast movement to get to a specific point on the large map + + make_player_invisible(player) + + player:set_inventory_formspec([[ + size[8,6] + + label[3,0.1;Change class:] + + button[0.3,1;2.5,1;class_sniper;Long-range] + button[2.8,1;2.5,1;class_assault;Mid-range] + button[5.3,1;2.5,1;class_shotgun;Short-range] + + list[current_player;main;0,2;8,1;] + list[current_player;main;0,3.25;8,3;8] + listring[current_player;main] + ]]) + + player:hud_set_flags({ + hotbar = true, + healthbar = false, + breathbar = false, + }) + end + + core.change_player_privs(player_name, privs) +end + +function start_match() + if match_state ~= "not_started" then + return + end + + set_match_state("pre_match") + + map_data = place_map(map_data.name or "forest") -- default to forest if no map is specified + + core.chat_send_all(core.colorize("green", "Match about to start in 30 seconds!\nOpen inventory to change class!")) + + for _, player in pairs(core.get_connected_players()) do + set_player_mode(player, "pre_match") + give_player_items(player) + + player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) + + player:set_hp(20) + end + + for i = 10, 1, -1 do -- count down from 10 to 1 (yes you are free to set me on fire for this horrible solution) + core.after(20 + i, function() + core.chat_send_all(core.colorize("green", "Match starts in " .. (11 - i) .. " seconds.")) + end) + end + + core.after(30, function() + set_match_state("in_progress") + core.chat_send_all(core.colorize("green", "Match started!")) + + remove_barrier(map_data.size_x, map_data.barrier_level, map_data.size_z) + + alive_players = {} + + for _, player in pairs(core.get_connected_players()) do + local player_name = player:get_player_name() + inv = player:get_inventory() + + inv:set_list("main", {}) + + give_player_items(player) + + player:set_properties({ + pointable = true, -- allow players to be killable after the match starts + }) + alive_players[player_name] = "alive" + + set_player_mode(player, "normal") + end + end) +end + +function end_match() + set_match_state("not_started") + + for _, player in pairs(core.get_connected_players()) do + player:set_pos(spawn_pos) + player:get_inventory():set_list("main", {}) + + player:set_inventory_formspec([[ + size[8,4] + list[current_player;main;0,0;8,1;] + list[current_player;main;0,1.25;8,3;8] + listring[current_player;main] + ]]) + + + player:set_properties({pointable = false}) + + set_player_mode(player, "normal") + end + + return true +end + +function set_match_state(state) + match_state = state +end + +local function get_alive_players() + local alive_players_names = {} + + for player_name, _ in pairs(alive_players) do + if alive_players[player_name] == "alive" then + table.insert(alive_players_names, player_name) + end + end + + return alive_players_names +end + +local function kill_player(player, reason) + local player_name = player:get_player_name() + + if alive_players[player_name] ~= "alive" or match_state ~= "in_progress" then + return + end + + alive_players[player_name] = "dead" + + local alive_player_names = get_alive_players() + + local message = string.format("%s has been eliminated! (%s) %d player%s left!", player_name, reason, #alive_player_names, #alive_player_names == 1 and "" or "s") + core.chat_send_all(core.colorize("red", message)) + if #alive_player_names == 1 then + local winner_name = alive_player_names[1] + core.chat_send_all(core.colorize("green", winner_name .. " is the winner!")) + + set_match_state("post_match") + + core.after(5, end_match) + end +end + +local diggable_groups = { + "snappy", + "cracky", + "choppy", + "crumbly", + "oddly_breakable_by_hand", +} + +core.register_on_mods_loaded(function() + for itemname, _ in pairs(core.registered_nodes) do + local node = core.registered_nodes[itemname] + local groups = node.groups + + groups.fall_damage_add_percent = -100 + + groups.immortal = 1 + + for _, group in pairs(diggable_groups) do + groups[group] = nil + end + + core.override_item(itemname, {groups = groups}) + end +end) + +core.register_on_joinplayer(function(player) + core.place_schematic({x=-105, y=-10, z=-108}, core.get_modpath("main") .. "/schems/spawn.mts", 0, nil, true) + player:set_pos(spawn_pos) + player:get_inventory():set_list("main", {}) + + player:set_inventory_formspec([[ + size[8,4] + list[current_player;main;0,0;8,1;] + list[current_player;main;0,1.25;8,3;8] + listring[current_player;main] + ]]) + player:set_properties({pointable = false}) + + player:set_hud_flags({ + minimap = false, + minimap_radar = false, + }) + + if player:get_meta():get_string("class") == "" then + player:get_meta():set_string("class", "assault") + end + + set_player_mode(player, "normal") +end) + +core.register_on_leaveplayer(function(player) + local player_name = player:get_player_name() + + kill_player(player, "left the game") +end) + +core.register_on_dieplayer(function(player) + local player_name = player:get_player_name() + + kill_player(player, "died") +end) + +core.register_on_respawnplayer(function(player) + local player_name = player:get_player_name() + + if match_state == "in_progress" or match_state == "post_match" then + set_player_mode(player, "spectator") + + player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) + player:get_inventory():set_list("main", {}) + + player:set_properties({pointable = false}) + end + + return true +end) + +local timer = 0 +core.register_globalstep(function(dtime) + timer = timer + dtime + + if timer >= 10 then + timer = 0 + for _, player in pairs(core.get_connected_players()) do + if alive_players[player:get_player_name()] == "alive" then + player:set_hp(math.min(player:get_hp() + 2, 20)) + end + end + end +end) + +core.register_on_player_receive_fields(function(player, formname, fields) + + if match_state ~= "pre_match" then + return + end + + if fields.class_sniper then + player:get_meta():set_string("class", "sniper") + give_player_items(player) + elseif fields.class_assault then + player:get_meta():set_string("class", "assault") + give_player_items(player) + elseif fields.class_shotgun then + player:get_meta():set_string("class", "shotgun") + give_player_items(player) + end +end) + + +core.register_privilege("match_manager", {description = "Can manage the match", give_to_singleplayer = true}) + +core.register_chatcommand("load", { + params = "", + privs = {match_manager = true}, + description = "Load a map", + func = function(_, param) + if not param or param == "" then + return false, "-!- You must specify a map name!" + end + + if match_state == "pre_match" or match_state == "post_match" or match_state == "in_progress" then + return false, "-!- Match is already in progress!" + end + + map_data = place_map(param) + + return true, "-!- Map loaded!" + end +}) + +core.register_chatcommand("start", { + params = "", + privs = {match_manager = true}, + description = "Start the match", + func = function() + start_match() + return true, "-!- Match started!" + end +}) + +core.register_chatcommand("reset", { + params = "", + privs = {match_manager = true}, + description = "Terminate the match", + func = function() + if match_state ~= "pre_match" and match_state ~= "post_match" and match_state ~= "not_started" then + core.chat_send_all(core.colorize("red", "Match Terminated")) + end_match() + + return true + end + + return false, "Match Cannot be terminated at the moment" + end +}) \ No newline at end of file diff --git a/mods/main/mod.conf b/mods/game/main/mod.conf similarity index 62% rename from mods/main/mod.conf rename to mods/game/main/mod.conf index bdb454f..d9dd137 100644 --- a/mods/main/mod.conf +++ b/mods/game/main/mod.conf @@ -1,2 +1,3 @@ name = main description = Main mod for Game +depends = maps, playertag diff --git a/mods/main/schems/spawn.mts b/mods/game/main/schems/spawn.mts similarity index 100% rename from mods/main/schems/spawn.mts rename to mods/game/main/schems/spawn.mts diff --git a/mods/maps/init.lua b/mods/game/maps/init.lua similarity index 100% rename from mods/maps/init.lua rename to mods/game/maps/init.lua diff --git a/mods/maps/maps/forest/map.lua b/mods/game/maps/maps/forest/map.lua similarity index 91% rename from mods/maps/maps/forest/map.lua rename to mods/game/maps/maps/forest/map.lua index 7cfd9be..5533aae 100644 --- a/mods/maps/maps/forest/map.lua +++ b/mods/game/maps/maps/forest/map.lua @@ -1,4 +1,5 @@ local map_data = { + name = "forest", size_x = 155, size_y = 53, size_z = 147, diff --git a/mods/maps/maps/forest/map.mts b/mods/game/maps/maps/forest/map.mts similarity index 100% rename from mods/maps/maps/forest/map.mts rename to mods/game/maps/maps/forest/map.mts diff --git a/mods/maps/maps/pine/map.lua b/mods/game/maps/maps/pine/map.lua similarity index 91% rename from mods/maps/maps/pine/map.lua rename to mods/game/maps/maps/pine/map.lua index a124292..c422923 100644 --- a/mods/maps/maps/pine/map.lua +++ b/mods/game/maps/maps/pine/map.lua @@ -1,4 +1,5 @@ local map_data = { + name = "pine", size_x = 111, size_y = 64, size_z = 107, diff --git a/mods/maps/maps/pine/map.mts b/mods/game/maps/maps/pine/map.mts similarity index 100% rename from mods/maps/maps/pine/map.mts rename to mods/game/maps/maps/pine/map.mts diff --git a/mods/maps/maps/savanna/map.lua b/mods/game/maps/maps/savanna/map.lua similarity index 90% rename from mods/maps/maps/savanna/map.lua rename to mods/game/maps/maps/savanna/map.lua index f3851e7..0b82dcc 100644 --- a/mods/maps/maps/savanna/map.lua +++ b/mods/game/maps/maps/savanna/map.lua @@ -1,4 +1,5 @@ local map_data = { + name = "savanna", size_x = 341, size_y = 83, size_z = 188, diff --git a/mods/maps/maps/savanna/map.mts b/mods/game/maps/maps/savanna/map.mts similarity index 100% rename from mods/maps/maps/savanna/map.mts rename to mods/game/maps/maps/savanna/map.mts diff --git a/mods/maps/mod.conf b/mods/game/maps/mod.conf similarity index 79% rename from mods/maps/mod.conf rename to mods/game/maps/mod.conf index a1af990..9122895 100644 --- a/mods/maps/mod.conf +++ b/mods/game/maps/mod.conf @@ -1,3 +1,2 @@ name = maps description = Maps mod for simple-shooter-game -depends = main diff --git a/mods/game/modpack.conf b/mods/game/modpack.conf new file mode 100644 index 0000000..5cec000 --- /dev/null +++ b/mods/game/modpack.conf @@ -0,0 +1 @@ +name = game diff --git a/mods/main/init.lua b/mods/main/init.lua deleted file mode 100644 index bce6a62..0000000 --- a/mods/main/init.lua +++ /dev/null @@ -1,224 +0,0 @@ -local alive_players = {} - -local function save_player_data(player) - player:get_meta():set_string("skin", core.serialize(player:get_properties().textures)) -end - -local function load_player_data(player) - player:set_properties({ - visual = "mesh", - textures = core.deserialize(player:get_meta():get_string("skin")) - }) -end - -function set_player_mode(player, mode) - local name = player:get_player_name() - local privs = core.get_player_privs(name) - local meta = player:get_meta() - local current_mode = meta:get_string("mode") - - if current_mode == mode then - return - end - - if mode == "normal" then - privs.fly = false - privs.fast = false - privs.noclip = false - privs.shout = true - privs.interact = true - - load_player_data(player) - - player:set_properties({pointable = true}) - - meta:set_string("mode", "normal") - - -- add pre_match mode? - elseif mode == "spectator" then - privs.fly = true - privs.fast = true - privs.noclip = true - privs.shout = false - privs.interact = false - - save_player_data(player) - - player:set_properties({ - pointable = false, - visual = "mesh", - textures = {"blank.png"}, - }) - - player:set_nametag_attributes({color = {a = 0}}) - - core.chat_send_player(name, core.colorize("cyan", "You are now a spectator.")) - - meta:set_string("mode", "spectator") - end - - core.change_player_privs(name, privs) -end - -local function get_alive_players() - local alive_players_names = {} - - for player_name, _ in pairs(alive_players) do - if alive_players[player_name] == "alive" then - table.insert(alive_players_names, player_name) - end - end - - return alive_players_names -end - -local function kill_player(player, reason) - local player_name = player:get_player_name() - - if alive_players[player_name] ~= "alive" then - return - end - - alive_players[player_name] = "dead" - - local alive_player_names = get_alive_players() - - local message = string.format("%s has been eliminated! (%s) %d player%s left!", player_name, reason, #alive_player_names, #alive_player_names == 1 and "" or "s") - core.chat_send_all(core.colorize("red", message)) - if #alive_player_names == 1 then - local winner_name = alive_player_names[1] - core.chat_send_all(core.colorize("green", winner_name .. " is the winner!")) - end -end - -local diggable_groups = { - "snappy", - "cracky", - "choppy", - "crumbly", - "oddly_breakable_by_hand", -} - -core.register_on_mods_loaded(function() - for itemname, _ in pairs(core.registered_nodes) do - local node = core.registered_nodes[itemname] - local groups = node.groups - - groups.fall_damage_add_percent = -100 - - groups.immortal = 1 - - for _, group in pairs(diggable_groups) do - groups[group] = nil - end - - core.override_item(itemname, {groups = groups}) - end -end) - -core.register_on_joinplayer(function(player) - core.place_schematic({x=0, y=-10, z=0}, core.get_modpath("main") .. "/schems/spawn.mts", 0, nil, true) - player:set_pos({x=5, y=-9.6, z=8}) - player:get_inventory():set_list("main", {}) - - player:set_inventory_formspec([[ - size[8,4] - list[current_player;main;0,0;8,1;] - list[current_player;main;0,1.25;8,3;8] - listring[current_player;main] - ]]) - player:set_properties({pointable = false}) - - set_player_mode(player, "normal") -end) - -core.register_on_leaveplayer(function(player) - local player_name = player:get_player_name() - - kill_player(player, "left the game") -end) - -core.register_on_dieplayer(function(player) - local player_name = player:get_player_name() - - kill_player(player, "died") -end) - -core.register_on_respawnplayer(function(player) - set_player_mode(player, "spectator") - - local player_name = player:get_player_name() - - player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) - - player:get_inventory():set_list("main", {}) - - player:set_properties({pointable = false}) - - return true -end) - -core.register_privilege("match_manager", {description = "Can manage the match", give_to_singleplayer = true}) - -core.register_chatcommand("load", { - params = "", - privs = {match_manager = true}, - description = "Load a map", - func = function(_, param) - map_data = place_map(param) - for _, player in pairs(core.get_connected_players()) do - local player_name = player:get_player_name() - set_player_mode(player, "normal") - player:set_nametag_attributes({color = {a = 0}}) - player:set_hp(20) - - player:set_pos({x=map_data.spawn_x, y=map_data.spawn_y, z=map_data.spawn_z}) - - end - end -}) - -core.register_chatcommand("start", { - params = "", - privs = {match_manager = true}, - description = "Start the match", - func = function() - remove_barrier(map_data.size_x, map_data.barrier_level, map_data.size_z) - core.chat_send_all(core.colorize("green", "Match started!")) - alive_players = {} - for _, player in pairs(core.get_connected_players()) do - local player_name = player:get_player_name() - inv = player:get_inventory() - inv:add_item("main", "ctf_ranged:ak47_loaded") - inv:add_item("main", "ctf_ranged:remington870_loaded") - inv:add_item("main", "ctf_ranged:glock17_loaded") - inv:add_item("main", "ctf_ranged:ammo 50") - player:set_properties({ - pointable = true, -- allow players to be killable after the match starts - }) - alive_players[player_name] = "alive" - end - return "" - end -}) - -core.register_chatcommand("reset", { - params = "", - privs = {match_manager = true}, - description = "Reset map", - func = function() - for _, player in pairs(core.get_connected_players()) do - local player_name = player:get_player_name() - player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) - set_player_mode(player, "normal") - player:get_inventory():set_list("main", {}) - player:set_properties({ - visual = "mesh", - textures = core.deserialize(player:get_meta():get_string("skin")), - pointable=false, - }) - end - core.chat_send_all(core.colorize("red", "Match terminated.")) - return "" - end -}) diff --git a/mods/basic_materials/.github/workflows/luacheck.yml b/mods/misc/basic_materials/.github/workflows/luacheck.yml similarity index 100% rename from mods/basic_materials/.github/workflows/luacheck.yml rename to mods/misc/basic_materials/.github/workflows/luacheck.yml diff --git a/mods/basic_materials/.luacheckrc b/mods/misc/basic_materials/.luacheckrc similarity index 100% rename from mods/basic_materials/.luacheckrc rename to mods/misc/basic_materials/.luacheckrc diff --git a/mods/basic_materials/LICENSE b/mods/misc/basic_materials/LICENSE similarity index 100% rename from mods/basic_materials/LICENSE rename to mods/misc/basic_materials/LICENSE diff --git a/mods/basic_materials/README.md b/mods/misc/basic_materials/README.md similarity index 100% rename from mods/basic_materials/README.md rename to mods/misc/basic_materials/README.md diff --git a/mods/basic_materials/aliases.lua b/mods/misc/basic_materials/aliases.lua similarity index 100% rename from mods/basic_materials/aliases.lua rename to mods/misc/basic_materials/aliases.lua diff --git a/mods/basic_materials/craftitems.lua b/mods/misc/basic_materials/craftitems.lua similarity index 100% rename from mods/basic_materials/craftitems.lua rename to mods/misc/basic_materials/craftitems.lua diff --git a/mods/basic_materials/crafts.lua b/mods/misc/basic_materials/crafts.lua similarity index 100% rename from mods/basic_materials/crafts.lua rename to mods/misc/basic_materials/crafts.lua diff --git a/mods/basic_materials/init.lua b/mods/misc/basic_materials/init.lua similarity index 100% rename from mods/basic_materials/init.lua rename to mods/misc/basic_materials/init.lua diff --git a/mods/basic_materials/locale/basic_materials.de.tr b/mods/misc/basic_materials/locale/basic_materials.de.tr similarity index 100% rename from mods/basic_materials/locale/basic_materials.de.tr rename to mods/misc/basic_materials/locale/basic_materials.de.tr diff --git a/mods/basic_materials/locale/basic_materials.fr.tr b/mods/misc/basic_materials/locale/basic_materials.fr.tr similarity index 100% rename from mods/basic_materials/locale/basic_materials.fr.tr rename to mods/misc/basic_materials/locale/basic_materials.fr.tr diff --git a/mods/basic_materials/locale/basic_materials.it.tr b/mods/misc/basic_materials/locale/basic_materials.it.tr similarity index 100% rename from mods/basic_materials/locale/basic_materials.it.tr rename to mods/misc/basic_materials/locale/basic_materials.it.tr diff --git a/mods/basic_materials/locale/basic_materials.ru.tr b/mods/misc/basic_materials/locale/basic_materials.ru.tr similarity index 100% rename from mods/basic_materials/locale/basic_materials.ru.tr rename to mods/misc/basic_materials/locale/basic_materials.ru.tr diff --git a/mods/basic_materials/mod.conf b/mods/misc/basic_materials/mod.conf similarity index 100% rename from mods/basic_materials/mod.conf rename to mods/misc/basic_materials/mod.conf diff --git a/mods/basic_materials/models/basic_materials_chains.obj b/mods/misc/basic_materials/models/basic_materials_chains.obj similarity index 100% rename from mods/basic_materials/models/basic_materials_chains.obj rename to mods/misc/basic_materials/models/basic_materials_chains.obj diff --git a/mods/basic_materials/nodes.lua b/mods/misc/basic_materials/nodes.lua similarity index 100% rename from mods/basic_materials/nodes.lua rename to mods/misc/basic_materials/nodes.lua diff --git a/mods/basic_materials/textures/basic_materials_aluminum_bar.png b/mods/misc/basic_materials/textures/basic_materials_aluminum_bar.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_aluminum_bar.png rename to mods/misc/basic_materials/textures/basic_materials_aluminum_bar.png diff --git a/mods/basic_materials/textures/basic_materials_aluminum_strip.png b/mods/misc/basic_materials/textures/basic_materials_aluminum_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_aluminum_strip.png rename to mods/misc/basic_materials/textures/basic_materials_aluminum_strip.png diff --git a/mods/basic_materials/textures/basic_materials_aluminum_wire.png b/mods/misc/basic_materials/textures/basic_materials_aluminum_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_aluminum_wire.png rename to mods/misc/basic_materials/textures/basic_materials_aluminum_wire.png diff --git a/mods/basic_materials/textures/basic_materials_brass_block.png b/mods/misc/basic_materials/textures/basic_materials_brass_block.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_brass_block.png rename to mods/misc/basic_materials/textures/basic_materials_brass_block.png diff --git a/mods/basic_materials/textures/basic_materials_brass_ingot.png b/mods/misc/basic_materials/textures/basic_materials_brass_ingot.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_brass_ingot.png rename to mods/misc/basic_materials/textures/basic_materials_brass_ingot.png diff --git a/mods/basic_materials/textures/basic_materials_carbon_steel_bar.png b/mods/misc/basic_materials/textures/basic_materials_carbon_steel_bar.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_carbon_steel_bar.png rename to mods/misc/basic_materials/textures/basic_materials_carbon_steel_bar.png diff --git a/mods/basic_materials/textures/basic_materials_cement_block.png b/mods/misc/basic_materials/textures/basic_materials_cement_block.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_cement_block.png rename to mods/misc/basic_materials/textures/basic_materials_cement_block.png diff --git a/mods/basic_materials/textures/basic_materials_chain_brass.png b/mods/misc/basic_materials/textures/basic_materials_chain_brass.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chain_brass.png rename to mods/misc/basic_materials/textures/basic_materials_chain_brass.png diff --git a/mods/basic_materials/textures/basic_materials_chain_brass_inv.png b/mods/misc/basic_materials/textures/basic_materials_chain_brass_inv.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chain_brass_inv.png rename to mods/misc/basic_materials/textures/basic_materials_chain_brass_inv.png diff --git a/mods/basic_materials/textures/basic_materials_chain_steel.png b/mods/misc/basic_materials/textures/basic_materials_chain_steel.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chain_steel.png rename to mods/misc/basic_materials/textures/basic_materials_chain_steel.png diff --git a/mods/basic_materials/textures/basic_materials_chain_steel_inv.png b/mods/misc/basic_materials/textures/basic_materials_chain_steel_inv.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chain_steel_inv.png rename to mods/misc/basic_materials/textures/basic_materials_chain_steel_inv.png diff --git a/mods/basic_materials/textures/basic_materials_chainlink_brass.png b/mods/misc/basic_materials/textures/basic_materials_chainlink_brass.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chainlink_brass.png rename to mods/misc/basic_materials/textures/basic_materials_chainlink_brass.png diff --git a/mods/basic_materials/textures/basic_materials_chainlink_steel.png b/mods/misc/basic_materials/textures/basic_materials_chainlink_steel.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_chainlink_steel.png rename to mods/misc/basic_materials/textures/basic_materials_chainlink_steel.png diff --git a/mods/basic_materials/textures/basic_materials_concrete_block.png b/mods/misc/basic_materials/textures/basic_materials_concrete_block.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_concrete_block.png rename to mods/misc/basic_materials/textures/basic_materials_concrete_block.png diff --git a/mods/basic_materials/textures/basic_materials_copper_strip.png b/mods/misc/basic_materials/textures/basic_materials_copper_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_copper_strip.png rename to mods/misc/basic_materials/textures/basic_materials_copper_strip.png diff --git a/mods/basic_materials/textures/basic_materials_copper_wire.png b/mods/misc/basic_materials/textures/basic_materials_copper_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_copper_wire.png rename to mods/misc/basic_materials/textures/basic_materials_copper_wire.png diff --git a/mods/basic_materials/textures/basic_materials_empty_spool.png b/mods/misc/basic_materials/textures/basic_materials_empty_spool.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_empty_spool.png rename to mods/misc/basic_materials/textures/basic_materials_empty_spool.png diff --git a/mods/basic_materials/textures/basic_materials_energy_crystal.png b/mods/misc/basic_materials/textures/basic_materials_energy_crystal.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_energy_crystal.png rename to mods/misc/basic_materials/textures/basic_materials_energy_crystal.png diff --git a/mods/basic_materials/textures/basic_materials_gear_steel.png b/mods/misc/basic_materials/textures/basic_materials_gear_steel.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_gear_steel.png rename to mods/misc/basic_materials/textures/basic_materials_gear_steel.png diff --git a/mods/basic_materials/textures/basic_materials_gold_strip.png b/mods/misc/basic_materials/textures/basic_materials_gold_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_gold_strip.png rename to mods/misc/basic_materials/textures/basic_materials_gold_strip.png diff --git a/mods/basic_materials/textures/basic_materials_gold_wire.png b/mods/misc/basic_materials/textures/basic_materials_gold_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_gold_wire.png rename to mods/misc/basic_materials/textures/basic_materials_gold_wire.png diff --git a/mods/basic_materials/textures/basic_materials_heating_element.png b/mods/misc/basic_materials/textures/basic_materials_heating_element.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_heating_element.png rename to mods/misc/basic_materials/textures/basic_materials_heating_element.png diff --git a/mods/basic_materials/textures/basic_materials_ic.png b/mods/misc/basic_materials/textures/basic_materials_ic.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_ic.png rename to mods/misc/basic_materials/textures/basic_materials_ic.png diff --git a/mods/basic_materials/textures/basic_materials_lead_strip.png b/mods/misc/basic_materials/textures/basic_materials_lead_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_lead_strip.png rename to mods/misc/basic_materials/textures/basic_materials_lead_strip.png diff --git a/mods/basic_materials/textures/basic_materials_motor.png b/mods/misc/basic_materials/textures/basic_materials_motor.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_motor.png rename to mods/misc/basic_materials/textures/basic_materials_motor.png diff --git a/mods/basic_materials/textures/basic_materials_oil_extract.png b/mods/misc/basic_materials/textures/basic_materials_oil_extract.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_oil_extract.png rename to mods/misc/basic_materials/textures/basic_materials_oil_extract.png diff --git a/mods/basic_materials/textures/basic_materials_padlock.png b/mods/misc/basic_materials/textures/basic_materials_padlock.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_padlock.png rename to mods/misc/basic_materials/textures/basic_materials_padlock.png diff --git a/mods/basic_materials/textures/basic_materials_paraffin.png b/mods/misc/basic_materials/textures/basic_materials_paraffin.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_paraffin.png rename to mods/misc/basic_materials/textures/basic_materials_paraffin.png diff --git a/mods/basic_materials/textures/basic_materials_plastic_sheet.png b/mods/misc/basic_materials/textures/basic_materials_plastic_sheet.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_plastic_sheet.png rename to mods/misc/basic_materials/textures/basic_materials_plastic_sheet.png diff --git a/mods/basic_materials/textures/basic_materials_plastic_strip.png b/mods/misc/basic_materials/textures/basic_materials_plastic_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_plastic_strip.png rename to mods/misc/basic_materials/textures/basic_materials_plastic_strip.png diff --git a/mods/basic_materials/textures/basic_materials_silicon.png b/mods/misc/basic_materials/textures/basic_materials_silicon.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_silicon.png rename to mods/misc/basic_materials/textures/basic_materials_silicon.png diff --git a/mods/basic_materials/textures/basic_materials_silver_wire.png b/mods/misc/basic_materials/textures/basic_materials_silver_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_silver_wire.png rename to mods/misc/basic_materials/textures/basic_materials_silver_wire.png diff --git a/mods/basic_materials/textures/basic_materials_stainless_steel_bar.png b/mods/misc/basic_materials/textures/basic_materials_stainless_steel_bar.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_stainless_steel_bar.png rename to mods/misc/basic_materials/textures/basic_materials_stainless_steel_bar.png diff --git a/mods/basic_materials/textures/basic_materials_stainless_steel_strip.png b/mods/misc/basic_materials/textures/basic_materials_stainless_steel_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_stainless_steel_strip.png rename to mods/misc/basic_materials/textures/basic_materials_stainless_steel_strip.png diff --git a/mods/basic_materials/textures/basic_materials_stainless_steel_wire.png b/mods/misc/basic_materials/textures/basic_materials_stainless_steel_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_stainless_steel_wire.png rename to mods/misc/basic_materials/textures/basic_materials_stainless_steel_wire.png diff --git a/mods/basic_materials/textures/basic_materials_steel_bar.png b/mods/misc/basic_materials/textures/basic_materials_steel_bar.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_steel_bar.png rename to mods/misc/basic_materials/textures/basic_materials_steel_bar.png diff --git a/mods/basic_materials/textures/basic_materials_steel_strip.png b/mods/misc/basic_materials/textures/basic_materials_steel_strip.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_steel_strip.png rename to mods/misc/basic_materials/textures/basic_materials_steel_strip.png diff --git a/mods/basic_materials/textures/basic_materials_steel_wire.png b/mods/misc/basic_materials/textures/basic_materials_steel_wire.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_steel_wire.png rename to mods/misc/basic_materials/textures/basic_materials_steel_wire.png diff --git a/mods/basic_materials/textures/basic_materials_terracotta_base.png b/mods/misc/basic_materials/textures/basic_materials_terracotta_base.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_terracotta_base.png rename to mods/misc/basic_materials/textures/basic_materials_terracotta_base.png diff --git a/mods/basic_materials/textures/basic_materials_wet_cement.png b/mods/misc/basic_materials/textures/basic_materials_wet_cement.png similarity index 100% rename from mods/basic_materials/textures/basic_materials_wet_cement.png rename to mods/misc/basic_materials/textures/basic_materials_wet_cement.png diff --git a/mods/misc/modpack.conf b/mods/misc/modpack.conf new file mode 100644 index 0000000..dcf7387 --- /dev/null +++ b/mods/misc/modpack.conf @@ -0,0 +1 @@ +name = misc diff --git a/mods/misc/playertag/README.md b/mods/misc/playertag/README.md new file mode 100644 index 0000000..130f369 --- /dev/null +++ b/mods/misc/playertag/README.md @@ -0,0 +1,5 @@ +This mod hides the existing tags, and adds entity based tags that are only as visible as the player. + +Some code taken from gauges (CC0 1.0) https://forum.minetest.net/viewtopic.php?t=10250 +And also some code and textures from npcf (LGPL for code, WTFPL for textures) https://forum.minetest.net/viewtopic.php?t=7321 +My part of the code is WTFPL. \ No newline at end of file diff --git a/mods/misc/playertag/init.lua b/mods/misc/playertag/init.lua new file mode 100644 index 0000000..3c06f3c --- /dev/null +++ b/mods/misc/playertag/init.lua @@ -0,0 +1,198 @@ +local players = {} +local ATTACH_POSITION = minetest.rgba and {x=0, y=20, z=0} or {x=0, y=10, z=0} + +local TYPE_BUILTIN = 0 +local TYPE_ENTITY = 1 + +playertag = { + TYPE_BUILTIN = TYPE_BUILTIN, + TYPE_ENTITY = TYPE_ENTITY, +} + +local function remove_entity_tag(player) + local tag = players[player:get_player_name()] + if tag then + if tag.entity then + tag.entity.object:remove() + tag.entity = nil + end + + if tag.nametag_entity then + tag.nametag_entity.object:remove() + tag.nametag_entity = nil + end + + if tag.symbol_entity then + tag.symbol_entity.object:remove() + tag.symbol_entity = nil + end + end +end + +local function add_entity_tag(player, old_observers) + local pname = player:get_player_name() + local ppos = player:get_pos() + + -- Hide fixed nametag + player:set_nametag_attributes({ + color = {a = 0, r = 0, g = 0, b = 0} + }) + + remove_entity_tag(player) + + if not ppos then return end + + local ent = minetest.add_entity(ppos, "playertag:tag") + local ent2 = false + local ent3 = false + + if not ent then + minetest.after(1, add_entity_tag, player, old_observers) + return + end + + if ent.set_observers then + ent2 = minetest.add_entity(ppos, "playertag:tag") + ent2:set_observers(old_observers.nametag_entity or {}) + ent2:set_properties({ + nametag = pname, + nametag_color = "#EEFFFFDD", + nametag_bgcolor = "#0000002D" + }) + + ent3 = minetest.add_entity(ppos, "playertag:tag") + ent3:set_observers(old_observers.symbol_entity or {}) + ent3:set_properties({ + collisionbox = { 0, 0, 0, 0, 0, 0 }, + nametag = "V", + nametag_color = "#EEFFFFDD", + nametag_bgcolor = "#0000002D" + }) + end + + -- Build name from font texture + local texture = "npcf_tag_bg.png" + local x = math.floor(134 - ((pname:len() * 11) / 2)) + local i = 0 + pname:gsub(".", function(char) + local n = "_" + if char:byte() > 96 and char:byte() < 123 or char:byte() > 47 and char:byte() < 58 or char == "-" then + n = char + elseif char:byte() > 64 and char:byte() < 91 then + n = "U" .. char + end + texture = texture.."^[combine:84x14:"..(x+i+1)..",1=(W_".. n ..".png\\^[multiply\\:#000):".. + (x+i)..",0=W_".. n ..".png" + i = i + 11 + end) + ent:set_properties({ textures={texture} }) + + -- Attach to player + ent:set_attach(player, "", ATTACH_POSITION, {x=0, y=0, z=0}) + + if ent2 and ent3 then + ent2:set_attach(player, "", ATTACH_POSITION, {x=0, y=0, z=0}) + ent3:set_attach(player, "", ATTACH_POSITION, {x=0, y=0, z=0}) + end + + -- Store + players[pname].entity = ent:get_luaentity() + players[pname].nametag_entity = ent2 and ent2:get_luaentity() + players[pname].symbol_entity = ent3 and ent3:get_luaentity() +end + +local function update(player, settings) + local pname = player:get_player_name() + local old_observers = {} + + if player.get_observers and players[pname] then + if players[pname].nametag_entity and players[pname].nametag_entity.object:get_pos() then + old_observers.nametag_entity = players[pname].nametag_entity.object:get_observers() + end + + if players[pname].symbol_entity and players[pname].nametag_entity.object:get_pos() then + old_observers.symbol_entity = players[pname].symbol_entity.object:get_observers() + end + end + + if settings.nametag_entity_observers then + old_observers.nametag_entity = table.copy(settings.nametag_entity_observers) + settings.nametag_entity_observers = nil + end + + if settings.symbol_entity_observers then + old_observers.symbol_entity = table.copy(settings.symbol_entity_observers) + settings.symbol_entity_observers = nil + end + + remove_entity_tag(player) + players[pname] = settings + + if settings.type == TYPE_BUILTIN then + player:set_nametag_attributes({ + color = settings.color or {a=255, r=255, g=255, b=255}, + bgcolor = {a=0, r=0, g=0, b=0}, + }) + elseif settings.type == TYPE_ENTITY then + add_entity_tag(player, old_observers) + end +end + +function playertag.set(player, type, color, extra) + local oldset = players[player:get_player_name()] + if not oldset then return end + + if oldset.type ~= type or oldset.color ~= color then + extra = extra or {} + extra.type = type + extra.color = color + + update(player, extra) + end + + return players[player:get_player_name()] +end + +function playertag.get(player) + return players[player:get_player_name()] +end + +function playertag.get_all() + return players +end + +minetest.register_entity("playertag:tag", { + visual = "sprite", + visual_size = {x=2.16, y=0.18, z=2.16}, --{x=1.44, y=0.12, z=1.44}, + textures = {"blank.png"}, + collisionbox = { 0, -0.2, 0, 0, -0.2, 0 }, + physical = false, + makes_footstep_sound = false, + backface_culling = false, + static_save = false, + pointable = false, + on_punch = function() return true end, + on_deactivate = function(self, removal) + if not removal then + local attachmentInfo = self.object:get_attach() + local player = nil + if attachmentInfo then + player = attachmentInfo.parent + end + + if player and player:is_player() then + minetest.log("action", "Playertag for player "..player:get_player_name().." unloaded. Re-adding...") + update(player, players[player:get_player_name()]) + end + end + end +}) + +minetest.register_on_joinplayer(function(player) + players[player:get_player_name()] = {type = TYPE_BUILTIN, color = {a=255, r=255, g=255, b=255}} +end) + +minetest.register_on_leaveplayer(function(player) + remove_entity_tag(player) + players[player:get_player_name()] = nil +end) diff --git a/mods/misc/playertag/mod.conf b/mods/misc/playertag/mod.conf new file mode 100644 index 0000000..4080ae1 --- /dev/null +++ b/mods/misc/playertag/mod.conf @@ -0,0 +1 @@ +name = playertag diff --git a/mods/misc/playertag/textures/W_-.png b/mods/misc/playertag/textures/W_-.png new file mode 100644 index 0000000..4195b39 Binary files /dev/null and b/mods/misc/playertag/textures/W_-.png differ diff --git a/mods/misc/playertag/textures/W_0.png b/mods/misc/playertag/textures/W_0.png new file mode 100644 index 0000000..6efb607 Binary files /dev/null and b/mods/misc/playertag/textures/W_0.png differ diff --git a/mods/misc/playertag/textures/W_1.png b/mods/misc/playertag/textures/W_1.png new file mode 100644 index 0000000..9f2928d Binary files /dev/null and b/mods/misc/playertag/textures/W_1.png differ diff --git a/mods/misc/playertag/textures/W_2.png b/mods/misc/playertag/textures/W_2.png new file mode 100644 index 0000000..bbafc52 Binary files /dev/null and b/mods/misc/playertag/textures/W_2.png differ diff --git a/mods/misc/playertag/textures/W_3.png b/mods/misc/playertag/textures/W_3.png new file mode 100644 index 0000000..7016250 Binary files /dev/null and b/mods/misc/playertag/textures/W_3.png differ diff --git a/mods/misc/playertag/textures/W_4.png b/mods/misc/playertag/textures/W_4.png new file mode 100644 index 0000000..02c89d6 Binary files /dev/null and b/mods/misc/playertag/textures/W_4.png differ diff --git a/mods/misc/playertag/textures/W_5.png b/mods/misc/playertag/textures/W_5.png new file mode 100644 index 0000000..166d7ae Binary files /dev/null and b/mods/misc/playertag/textures/W_5.png differ diff --git a/mods/misc/playertag/textures/W_6.png b/mods/misc/playertag/textures/W_6.png new file mode 100644 index 0000000..7b6eecd Binary files /dev/null and b/mods/misc/playertag/textures/W_6.png differ diff --git a/mods/misc/playertag/textures/W_7.png b/mods/misc/playertag/textures/W_7.png new file mode 100644 index 0000000..301342d Binary files /dev/null and b/mods/misc/playertag/textures/W_7.png differ diff --git a/mods/misc/playertag/textures/W_8.png b/mods/misc/playertag/textures/W_8.png new file mode 100644 index 0000000..f773f87 Binary files /dev/null and b/mods/misc/playertag/textures/W_8.png differ diff --git a/mods/misc/playertag/textures/W_9.png b/mods/misc/playertag/textures/W_9.png new file mode 100644 index 0000000..6a9a9dd Binary files /dev/null and b/mods/misc/playertag/textures/W_9.png differ diff --git a/mods/misc/playertag/textures/W_UA.png b/mods/misc/playertag/textures/W_UA.png new file mode 100644 index 0000000..68173d0 Binary files /dev/null and b/mods/misc/playertag/textures/W_UA.png differ diff --git a/mods/misc/playertag/textures/W_UB.png b/mods/misc/playertag/textures/W_UB.png new file mode 100644 index 0000000..30f41c5 Binary files /dev/null and b/mods/misc/playertag/textures/W_UB.png differ diff --git a/mods/misc/playertag/textures/W_UC.png b/mods/misc/playertag/textures/W_UC.png new file mode 100644 index 0000000..3348305 Binary files /dev/null and b/mods/misc/playertag/textures/W_UC.png differ diff --git a/mods/misc/playertag/textures/W_UD.png b/mods/misc/playertag/textures/W_UD.png new file mode 100644 index 0000000..06b093c Binary files /dev/null and b/mods/misc/playertag/textures/W_UD.png differ diff --git a/mods/misc/playertag/textures/W_UE.png b/mods/misc/playertag/textures/W_UE.png new file mode 100644 index 0000000..4378c68 Binary files /dev/null and b/mods/misc/playertag/textures/W_UE.png differ diff --git a/mods/misc/playertag/textures/W_UF.png b/mods/misc/playertag/textures/W_UF.png new file mode 100644 index 0000000..78ff7b0 Binary files /dev/null and b/mods/misc/playertag/textures/W_UF.png differ diff --git a/mods/misc/playertag/textures/W_UG.png b/mods/misc/playertag/textures/W_UG.png new file mode 100644 index 0000000..6402c9a Binary files /dev/null and b/mods/misc/playertag/textures/W_UG.png differ diff --git a/mods/misc/playertag/textures/W_UH.png b/mods/misc/playertag/textures/W_UH.png new file mode 100644 index 0000000..f288742 Binary files /dev/null and b/mods/misc/playertag/textures/W_UH.png differ diff --git a/mods/misc/playertag/textures/W_UI.png b/mods/misc/playertag/textures/W_UI.png new file mode 100644 index 0000000..d91464f Binary files /dev/null and b/mods/misc/playertag/textures/W_UI.png differ diff --git a/mods/misc/playertag/textures/W_UJ.png b/mods/misc/playertag/textures/W_UJ.png new file mode 100644 index 0000000..60000e0 Binary files /dev/null and b/mods/misc/playertag/textures/W_UJ.png differ diff --git a/mods/misc/playertag/textures/W_UK.png b/mods/misc/playertag/textures/W_UK.png new file mode 100644 index 0000000..789d34a Binary files /dev/null and b/mods/misc/playertag/textures/W_UK.png differ diff --git a/mods/misc/playertag/textures/W_UL.png b/mods/misc/playertag/textures/W_UL.png new file mode 100644 index 0000000..7cd5c0e Binary files /dev/null and b/mods/misc/playertag/textures/W_UL.png differ diff --git a/mods/misc/playertag/textures/W_UM.png b/mods/misc/playertag/textures/W_UM.png new file mode 100644 index 0000000..d579f04 Binary files /dev/null and b/mods/misc/playertag/textures/W_UM.png differ diff --git a/mods/misc/playertag/textures/W_UN.png b/mods/misc/playertag/textures/W_UN.png new file mode 100644 index 0000000..1614a51 Binary files /dev/null and b/mods/misc/playertag/textures/W_UN.png differ diff --git a/mods/misc/playertag/textures/W_UO.png b/mods/misc/playertag/textures/W_UO.png new file mode 100644 index 0000000..2349da3 Binary files /dev/null and b/mods/misc/playertag/textures/W_UO.png differ diff --git a/mods/misc/playertag/textures/W_UP.png b/mods/misc/playertag/textures/W_UP.png new file mode 100644 index 0000000..9ddc212 Binary files /dev/null and b/mods/misc/playertag/textures/W_UP.png differ diff --git a/mods/misc/playertag/textures/W_UQ.png b/mods/misc/playertag/textures/W_UQ.png new file mode 100644 index 0000000..43b3824 Binary files /dev/null and b/mods/misc/playertag/textures/W_UQ.png differ diff --git a/mods/misc/playertag/textures/W_UR.png b/mods/misc/playertag/textures/W_UR.png new file mode 100644 index 0000000..f7bda38 Binary files /dev/null and b/mods/misc/playertag/textures/W_UR.png differ diff --git a/mods/misc/playertag/textures/W_US.png b/mods/misc/playertag/textures/W_US.png new file mode 100644 index 0000000..29aca64 Binary files /dev/null and b/mods/misc/playertag/textures/W_US.png differ diff --git a/mods/misc/playertag/textures/W_UT.png b/mods/misc/playertag/textures/W_UT.png new file mode 100644 index 0000000..9e85a67 Binary files /dev/null and b/mods/misc/playertag/textures/W_UT.png differ diff --git a/mods/misc/playertag/textures/W_UU.png b/mods/misc/playertag/textures/W_UU.png new file mode 100644 index 0000000..aa51e2d Binary files /dev/null and b/mods/misc/playertag/textures/W_UU.png differ diff --git a/mods/misc/playertag/textures/W_UV.png b/mods/misc/playertag/textures/W_UV.png new file mode 100644 index 0000000..6ab8311 Binary files /dev/null and b/mods/misc/playertag/textures/W_UV.png differ diff --git a/mods/misc/playertag/textures/W_UW.png b/mods/misc/playertag/textures/W_UW.png new file mode 100644 index 0000000..6aae7be Binary files /dev/null and b/mods/misc/playertag/textures/W_UW.png differ diff --git a/mods/misc/playertag/textures/W_UX.png b/mods/misc/playertag/textures/W_UX.png new file mode 100644 index 0000000..e98d8ba Binary files /dev/null and b/mods/misc/playertag/textures/W_UX.png differ diff --git a/mods/misc/playertag/textures/W_UY.png b/mods/misc/playertag/textures/W_UY.png new file mode 100644 index 0000000..2050f9e Binary files /dev/null and b/mods/misc/playertag/textures/W_UY.png differ diff --git a/mods/misc/playertag/textures/W_UZ.png b/mods/misc/playertag/textures/W_UZ.png new file mode 100644 index 0000000..ab22a15 Binary files /dev/null and b/mods/misc/playertag/textures/W_UZ.png differ diff --git a/mods/misc/playertag/textures/W__.png b/mods/misc/playertag/textures/W__.png new file mode 100644 index 0000000..897a9d5 Binary files /dev/null and b/mods/misc/playertag/textures/W__.png differ diff --git a/mods/misc/playertag/textures/W_a.png b/mods/misc/playertag/textures/W_a.png new file mode 100644 index 0000000..a0bb42f Binary files /dev/null and b/mods/misc/playertag/textures/W_a.png differ diff --git a/mods/misc/playertag/textures/W_b.png b/mods/misc/playertag/textures/W_b.png new file mode 100644 index 0000000..1fa5bb2 Binary files /dev/null and b/mods/misc/playertag/textures/W_b.png differ diff --git a/mods/misc/playertag/textures/W_c.png b/mods/misc/playertag/textures/W_c.png new file mode 100644 index 0000000..ed4db6d Binary files /dev/null and b/mods/misc/playertag/textures/W_c.png differ diff --git a/mods/misc/playertag/textures/W_d.png b/mods/misc/playertag/textures/W_d.png new file mode 100644 index 0000000..7e9b36e Binary files /dev/null and b/mods/misc/playertag/textures/W_d.png differ diff --git a/mods/misc/playertag/textures/W_e.png b/mods/misc/playertag/textures/W_e.png new file mode 100644 index 0000000..5f558e1 Binary files /dev/null and b/mods/misc/playertag/textures/W_e.png differ diff --git a/mods/misc/playertag/textures/W_f.png b/mods/misc/playertag/textures/W_f.png new file mode 100644 index 0000000..71a8927 Binary files /dev/null and b/mods/misc/playertag/textures/W_f.png differ diff --git a/mods/misc/playertag/textures/W_g.png b/mods/misc/playertag/textures/W_g.png new file mode 100644 index 0000000..415fd7c Binary files /dev/null and b/mods/misc/playertag/textures/W_g.png differ diff --git a/mods/misc/playertag/textures/W_h.png b/mods/misc/playertag/textures/W_h.png new file mode 100644 index 0000000..d6cb960 Binary files /dev/null and b/mods/misc/playertag/textures/W_h.png differ diff --git a/mods/misc/playertag/textures/W_i.png b/mods/misc/playertag/textures/W_i.png new file mode 100644 index 0000000..d8157ad Binary files /dev/null and b/mods/misc/playertag/textures/W_i.png differ diff --git a/mods/misc/playertag/textures/W_j.png b/mods/misc/playertag/textures/W_j.png new file mode 100644 index 0000000..991031d Binary files /dev/null and b/mods/misc/playertag/textures/W_j.png differ diff --git a/mods/misc/playertag/textures/W_k.png b/mods/misc/playertag/textures/W_k.png new file mode 100644 index 0000000..eaa1161 Binary files /dev/null and b/mods/misc/playertag/textures/W_k.png differ diff --git a/mods/misc/playertag/textures/W_l.png b/mods/misc/playertag/textures/W_l.png new file mode 100644 index 0000000..22ac34a Binary files /dev/null and b/mods/misc/playertag/textures/W_l.png differ diff --git a/mods/misc/playertag/textures/W_m.png b/mods/misc/playertag/textures/W_m.png new file mode 100644 index 0000000..bc74857 Binary files /dev/null and b/mods/misc/playertag/textures/W_m.png differ diff --git a/mods/misc/playertag/textures/W_n.png b/mods/misc/playertag/textures/W_n.png new file mode 100644 index 0000000..b22fa3f Binary files /dev/null and b/mods/misc/playertag/textures/W_n.png differ diff --git a/mods/misc/playertag/textures/W_o.png b/mods/misc/playertag/textures/W_o.png new file mode 100644 index 0000000..02b7610 Binary files /dev/null and b/mods/misc/playertag/textures/W_o.png differ diff --git a/mods/misc/playertag/textures/W_p.png b/mods/misc/playertag/textures/W_p.png new file mode 100644 index 0000000..9c35cea Binary files /dev/null and b/mods/misc/playertag/textures/W_p.png differ diff --git a/mods/misc/playertag/textures/W_q.png b/mods/misc/playertag/textures/W_q.png new file mode 100644 index 0000000..9495089 Binary files /dev/null and b/mods/misc/playertag/textures/W_q.png differ diff --git a/mods/misc/playertag/textures/W_r.png b/mods/misc/playertag/textures/W_r.png new file mode 100644 index 0000000..cdb4463 Binary files /dev/null and b/mods/misc/playertag/textures/W_r.png differ diff --git a/mods/misc/playertag/textures/W_s.png b/mods/misc/playertag/textures/W_s.png new file mode 100644 index 0000000..98d2f37 Binary files /dev/null and b/mods/misc/playertag/textures/W_s.png differ diff --git a/mods/misc/playertag/textures/W_t.png b/mods/misc/playertag/textures/W_t.png new file mode 100644 index 0000000..c6484ea Binary files /dev/null and b/mods/misc/playertag/textures/W_t.png differ diff --git a/mods/misc/playertag/textures/W_u.png b/mods/misc/playertag/textures/W_u.png new file mode 100644 index 0000000..6ecbc10 Binary files /dev/null and b/mods/misc/playertag/textures/W_u.png differ diff --git a/mods/misc/playertag/textures/W_v.png b/mods/misc/playertag/textures/W_v.png new file mode 100644 index 0000000..c4f8c06 Binary files /dev/null and b/mods/misc/playertag/textures/W_v.png differ diff --git a/mods/misc/playertag/textures/W_w.png b/mods/misc/playertag/textures/W_w.png new file mode 100644 index 0000000..de6dd30 Binary files /dev/null and b/mods/misc/playertag/textures/W_w.png differ diff --git a/mods/misc/playertag/textures/W_x.png b/mods/misc/playertag/textures/W_x.png new file mode 100644 index 0000000..50f8d4b Binary files /dev/null and b/mods/misc/playertag/textures/W_x.png differ diff --git a/mods/misc/playertag/textures/W_y.png b/mods/misc/playertag/textures/W_y.png new file mode 100644 index 0000000..9769d2b Binary files /dev/null and b/mods/misc/playertag/textures/W_y.png differ diff --git a/mods/misc/playertag/textures/W_z.png b/mods/misc/playertag/textures/W_z.png new file mode 100644 index 0000000..4376db4 Binary files /dev/null and b/mods/misc/playertag/textures/W_z.png differ diff --git a/mods/misc/playertag/textures/npcf_tag_bg.png b/mods/misc/playertag/textures/npcf_tag_bg.png new file mode 100644 index 0000000..33f6da3 Binary files /dev/null and b/mods/misc/playertag/textures/npcf_tag_bg.png differ diff --git a/mods/sprint/COPYING b/mods/misc/sprint/COPYING similarity index 100% rename from mods/sprint/COPYING rename to mods/misc/sprint/COPYING diff --git a/mods/sprint/README.md b/mods/misc/sprint/README.md similarity index 100% rename from mods/sprint/README.md rename to mods/misc/sprint/README.md diff --git a/mods/sprint/depends.txt b/mods/misc/sprint/depends.txt similarity index 100% rename from mods/sprint/depends.txt rename to mods/misc/sprint/depends.txt diff --git a/mods/sprint/esprint.lua b/mods/misc/sprint/esprint.lua similarity index 100% rename from mods/sprint/esprint.lua rename to mods/misc/sprint/esprint.lua diff --git a/mods/sprint/init.lua b/mods/misc/sprint/init.lua similarity index 100% rename from mods/sprint/init.lua rename to mods/misc/sprint/init.lua diff --git a/mods/sprint/textures/sprint_particle.png b/mods/misc/sprint/textures/sprint_particle.png similarity index 100% rename from mods/sprint/textures/sprint_particle.png rename to mods/misc/sprint/textures/sprint_particle.png diff --git a/mods/sprint/textures/sprint_stamina_bar.png b/mods/misc/sprint/textures/sprint_stamina_bar.png similarity index 100% rename from mods/sprint/textures/sprint_stamina_bar.png rename to mods/misc/sprint/textures/sprint_stamina_bar.png diff --git a/mods/sprint/textures/sprint_stamina_icon.png b/mods/misc/sprint/textures/sprint_stamina_icon.png similarity index 100% rename from mods/sprint/textures/sprint_stamina_icon.png rename to mods/misc/sprint/textures/sprint_stamina_icon.png diff --git a/mods/sprint/wsprint.lua b/mods/misc/sprint/wsprint.lua similarity index 100% rename from mods/sprint/wsprint.lua rename to mods/misc/sprint/wsprint.lua diff --git a/mods/wield3d/.gitignore b/mods/misc/wield3d/.gitignore similarity index 100% rename from mods/wield3d/.gitignore rename to mods/misc/wield3d/.gitignore diff --git a/mods/wield3d/.luacheckrc b/mods/misc/wield3d/.luacheckrc similarity index 100% rename from mods/wield3d/.luacheckrc rename to mods/misc/wield3d/.luacheckrc diff --git a/mods/wield3d/LICENSE b/mods/misc/wield3d/LICENSE similarity index 100% rename from mods/wield3d/LICENSE rename to mods/misc/wield3d/LICENSE diff --git a/mods/wield3d/README.md b/mods/misc/wield3d/README.md similarity index 100% rename from mods/wield3d/README.md rename to mods/misc/wield3d/README.md diff --git a/mods/wield3d/init.lua b/mods/misc/wield3d/init.lua similarity index 100% rename from mods/wield3d/init.lua rename to mods/misc/wield3d/init.lua diff --git a/mods/wield3d/location.lua b/mods/misc/wield3d/location.lua similarity index 100% rename from mods/wield3d/location.lua rename to mods/misc/wield3d/location.lua diff --git a/mods/wield3d/mod.conf b/mods/misc/wield3d/mod.conf similarity index 100% rename from mods/wield3d/mod.conf rename to mods/misc/wield3d/mod.conf diff --git a/mods/wield3d/screenshot.png b/mods/misc/wield3d/screenshot.png similarity index 100% rename from mods/wield3d/screenshot.png rename to mods/misc/wield3d/screenshot.png diff --git a/mods/wield3d/settingtypes.txt b/mods/misc/wield3d/settingtypes.txt similarity index 100% rename from mods/wield3d/settingtypes.txt rename to mods/misc/wield3d/settingtypes.txt diff --git a/mods/xcompat/.github/workflows/farlands_reloaded.yml b/mods/misc/xcompat/.github/workflows/farlands_reloaded.yml similarity index 100% rename from mods/xcompat/.github/workflows/farlands_reloaded.yml rename to mods/misc/xcompat/.github/workflows/farlands_reloaded.yml diff --git a/mods/xcompat/.github/workflows/hades_revisited.yml b/mods/misc/xcompat/.github/workflows/hades_revisited.yml similarity index 100% rename from mods/xcompat/.github/workflows/hades_revisited.yml rename to mods/misc/xcompat/.github/workflows/hades_revisited.yml diff --git a/mods/xcompat/.github/workflows/luacheck.yml b/mods/misc/xcompat/.github/workflows/luacheck.yml similarity index 100% rename from mods/xcompat/.github/workflows/luacheck.yml rename to mods/misc/xcompat/.github/workflows/luacheck.yml diff --git a/mods/xcompat/.github/workflows/mineclonia.yml b/mods/misc/xcompat/.github/workflows/mineclonia.yml similarity index 100% rename from mods/xcompat/.github/workflows/mineclonia.yml rename to mods/misc/xcompat/.github/workflows/mineclonia.yml diff --git a/mods/xcompat/.github/workflows/minetest_game.yml b/mods/misc/xcompat/.github/workflows/minetest_game.yml similarity index 100% rename from mods/xcompat/.github/workflows/minetest_game.yml rename to mods/misc/xcompat/.github/workflows/minetest_game.yml diff --git a/mods/xcompat/.github/workflows/voxelibre.yml b/mods/misc/xcompat/.github/workflows/voxelibre.yml similarity index 100% rename from mods/xcompat/.github/workflows/voxelibre.yml rename to mods/misc/xcompat/.github/workflows/voxelibre.yml diff --git a/mods/xcompat/.luacheckrc b/mods/misc/xcompat/.luacheckrc similarity index 100% rename from mods/xcompat/.luacheckrc rename to mods/misc/xcompat/.luacheckrc diff --git a/mods/xcompat/LICENSE b/mods/misc/xcompat/LICENSE similarity index 100% rename from mods/xcompat/LICENSE rename to mods/misc/xcompat/LICENSE diff --git a/mods/xcompat/README.md b/mods/misc/xcompat/README.md similarity index 100% rename from mods/xcompat/README.md rename to mods/misc/xcompat/README.md diff --git a/mods/xcompat/doc/functions.md b/mods/misc/xcompat/doc/functions.md similarity index 100% rename from mods/xcompat/doc/functions.md rename to mods/misc/xcompat/doc/functions.md diff --git a/mods/xcompat/doc/gameid.md b/mods/misc/xcompat/doc/gameid.md similarity index 100% rename from mods/xcompat/doc/gameid.md rename to mods/misc/xcompat/doc/gameid.md diff --git a/mods/xcompat/doc/materials.md b/mods/misc/xcompat/doc/materials.md similarity index 100% rename from mods/xcompat/doc/materials.md rename to mods/misc/xcompat/doc/materials.md diff --git a/mods/xcompat/doc/player.md b/mods/misc/xcompat/doc/player.md similarity index 100% rename from mods/xcompat/doc/player.md rename to mods/misc/xcompat/doc/player.md diff --git a/mods/xcompat/doc/sounds.md b/mods/misc/xcompat/doc/sounds.md similarity index 100% rename from mods/xcompat/doc/sounds.md rename to mods/misc/xcompat/doc/sounds.md diff --git a/mods/xcompat/doc/stairs.md b/mods/misc/xcompat/doc/stairs.md similarity index 100% rename from mods/xcompat/doc/stairs.md rename to mods/misc/xcompat/doc/stairs.md diff --git a/mods/xcompat/doc/textures.md b/mods/misc/xcompat/doc/textures.md similarity index 100% rename from mods/xcompat/doc/textures.md rename to mods/misc/xcompat/doc/textures.md diff --git a/mods/xcompat/gitattributes b/mods/misc/xcompat/gitattributes similarity index 100% rename from mods/xcompat/gitattributes rename to mods/misc/xcompat/gitattributes diff --git a/mods/xcompat/init.lua b/mods/misc/xcompat/init.lua similarity index 100% rename from mods/xcompat/init.lua rename to mods/misc/xcompat/init.lua diff --git a/mods/xcompat/mod.conf b/mods/misc/xcompat/mod.conf similarity index 100% rename from mods/xcompat/mod.conf rename to mods/misc/xcompat/mod.conf diff --git a/mods/xcompat/mtt.lua b/mods/misc/xcompat/mtt.lua similarity index 100% rename from mods/xcompat/mtt.lua rename to mods/misc/xcompat/mtt.lua diff --git a/mods/xcompat/src/commands.lua b/mods/misc/xcompat/src/commands.lua similarity index 100% rename from mods/xcompat/src/commands.lua rename to mods/misc/xcompat/src/commands.lua diff --git a/mods/xcompat/src/functions.lua b/mods/misc/xcompat/src/functions.lua similarity index 100% rename from mods/xcompat/src/functions.lua rename to mods/misc/xcompat/src/functions.lua diff --git a/mods/xcompat/src/gameid.lua b/mods/misc/xcompat/src/gameid.lua similarity index 100% rename from mods/xcompat/src/gameid.lua rename to mods/misc/xcompat/src/gameid.lua diff --git a/mods/xcompat/src/materials.lua b/mods/misc/xcompat/src/materials.lua similarity index 100% rename from mods/xcompat/src/materials.lua rename to mods/misc/xcompat/src/materials.lua diff --git a/mods/xcompat/src/materials/farlands_reloaded.lua b/mods/misc/xcompat/src/materials/farlands_reloaded.lua similarity index 100% rename from mods/xcompat/src/materials/farlands_reloaded.lua rename to mods/misc/xcompat/src/materials/farlands_reloaded.lua diff --git a/mods/xcompat/src/materials/hades_revisited.lua b/mods/misc/xcompat/src/materials/hades_revisited.lua similarity index 100% rename from mods/xcompat/src/materials/hades_revisited.lua rename to mods/misc/xcompat/src/materials/hades_revisited.lua diff --git a/mods/xcompat/src/materials/mineclonia.lua b/mods/misc/xcompat/src/materials/mineclonia.lua similarity index 100% rename from mods/xcompat/src/materials/mineclonia.lua rename to mods/misc/xcompat/src/materials/mineclonia.lua diff --git a/mods/xcompat/src/materials/minetest.lua b/mods/misc/xcompat/src/materials/minetest.lua similarity index 100% rename from mods/xcompat/src/materials/minetest.lua rename to mods/misc/xcompat/src/materials/minetest.lua diff --git a/mods/xcompat/src/player.lua b/mods/misc/xcompat/src/player.lua similarity index 100% rename from mods/xcompat/src/player.lua rename to mods/misc/xcompat/src/player.lua diff --git a/mods/xcompat/src/player/farlands_reloaded.lua b/mods/misc/xcompat/src/player/farlands_reloaded.lua similarity index 100% rename from mods/xcompat/src/player/farlands_reloaded.lua rename to mods/misc/xcompat/src/player/farlands_reloaded.lua diff --git a/mods/xcompat/src/player/mineclonia.lua b/mods/misc/xcompat/src/player/mineclonia.lua similarity index 100% rename from mods/xcompat/src/player/mineclonia.lua rename to mods/misc/xcompat/src/player/mineclonia.lua diff --git a/mods/xcompat/src/player/minetest.lua b/mods/misc/xcompat/src/player/minetest.lua similarity index 100% rename from mods/xcompat/src/player/minetest.lua rename to mods/misc/xcompat/src/player/minetest.lua diff --git a/mods/xcompat/src/player/xcompat_agnostic.lua b/mods/misc/xcompat/src/player/xcompat_agnostic.lua similarity index 100% rename from mods/xcompat/src/player/xcompat_agnostic.lua rename to mods/misc/xcompat/src/player/xcompat_agnostic.lua diff --git a/mods/xcompat/src/sounds.lua b/mods/misc/xcompat/src/sounds.lua similarity index 100% rename from mods/xcompat/src/sounds.lua rename to mods/misc/xcompat/src/sounds.lua diff --git a/mods/xcompat/src/sounds/exile.lua b/mods/misc/xcompat/src/sounds/exile.lua similarity index 100% rename from mods/xcompat/src/sounds/exile.lua rename to mods/misc/xcompat/src/sounds/exile.lua diff --git a/mods/xcompat/src/sounds/farlands_reloaded.lua b/mods/misc/xcompat/src/sounds/farlands_reloaded.lua similarity index 100% rename from mods/xcompat/src/sounds/farlands_reloaded.lua rename to mods/misc/xcompat/src/sounds/farlands_reloaded.lua diff --git a/mods/xcompat/src/sounds/forgotten_lands.lua b/mods/misc/xcompat/src/sounds/forgotten_lands.lua similarity index 100% rename from mods/xcompat/src/sounds/forgotten_lands.lua rename to mods/misc/xcompat/src/sounds/forgotten_lands.lua diff --git a/mods/xcompat/src/sounds/hades_revisited.lua b/mods/misc/xcompat/src/sounds/hades_revisited.lua similarity index 100% rename from mods/xcompat/src/sounds/hades_revisited.lua rename to mods/misc/xcompat/src/sounds/hades_revisited.lua diff --git a/mods/xcompat/src/sounds/ksurvive2.lua b/mods/misc/xcompat/src/sounds/ksurvive2.lua similarity index 100% rename from mods/xcompat/src/sounds/ksurvive2.lua rename to mods/misc/xcompat/src/sounds/ksurvive2.lua diff --git a/mods/xcompat/src/sounds/mineclonia.lua b/mods/misc/xcompat/src/sounds/mineclonia.lua similarity index 100% rename from mods/xcompat/src/sounds/mineclonia.lua rename to mods/misc/xcompat/src/sounds/mineclonia.lua diff --git a/mods/xcompat/src/sounds/minetest.lua b/mods/misc/xcompat/src/sounds/minetest.lua similarity index 100% rename from mods/xcompat/src/sounds/minetest.lua rename to mods/misc/xcompat/src/sounds/minetest.lua diff --git a/mods/xcompat/src/sounds/xcompat_agnostic.lua b/mods/misc/xcompat/src/sounds/xcompat_agnostic.lua similarity index 100% rename from mods/xcompat/src/sounds/xcompat_agnostic.lua rename to mods/misc/xcompat/src/sounds/xcompat_agnostic.lua diff --git a/mods/xcompat/src/stairs.lua b/mods/misc/xcompat/src/stairs.lua similarity index 100% rename from mods/xcompat/src/stairs.lua rename to mods/misc/xcompat/src/stairs.lua diff --git a/mods/xcompat/src/stairs/farlands_reloaded.lua b/mods/misc/xcompat/src/stairs/farlands_reloaded.lua similarity index 100% rename from mods/xcompat/src/stairs/farlands_reloaded.lua rename to mods/misc/xcompat/src/stairs/farlands_reloaded.lua diff --git a/mods/xcompat/src/stairs/minetest.lua b/mods/misc/xcompat/src/stairs/minetest.lua similarity index 100% rename from mods/xcompat/src/stairs/minetest.lua rename to mods/misc/xcompat/src/stairs/minetest.lua diff --git a/mods/xcompat/src/stairs/xcompat_agnostic.lua b/mods/misc/xcompat/src/stairs/xcompat_agnostic.lua similarity index 100% rename from mods/xcompat/src/stairs/xcompat_agnostic.lua rename to mods/misc/xcompat/src/stairs/xcompat_agnostic.lua diff --git a/mods/xcompat/src/textures.lua b/mods/misc/xcompat/src/textures.lua similarity index 100% rename from mods/xcompat/src/textures.lua rename to mods/misc/xcompat/src/textures.lua diff --git a/mods/xcompat/src/textures/farlands_reloaded.lua b/mods/misc/xcompat/src/textures/farlands_reloaded.lua similarity index 100% rename from mods/xcompat/src/textures/farlands_reloaded.lua rename to mods/misc/xcompat/src/textures/farlands_reloaded.lua diff --git a/mods/xcompat/src/textures/minetest.lua b/mods/misc/xcompat/src/textures/minetest.lua similarity index 100% rename from mods/xcompat/src/textures/minetest.lua rename to mods/misc/xcompat/src/textures/minetest.lua diff --git a/mods/xcompat/src/textures/xcompat_agnostic.lua b/mods/misc/xcompat/src/textures/xcompat_agnostic.lua similarity index 100% rename from mods/xcompat/src/textures/xcompat_agnostic.lua rename to mods/misc/xcompat/src/textures/xcompat_agnostic.lua diff --git a/mods/xcompat/src/utilities.lua b/mods/misc/xcompat/src/utilities.lua similarity index 100% rename from mods/xcompat/src/utilities.lua rename to mods/misc/xcompat/src/utilities.lua diff --git a/mods/xcompat/test/nodelist/farlands_reloaded.txt b/mods/misc/xcompat/test/nodelist/farlands_reloaded.txt similarity index 100% rename from mods/xcompat/test/nodelist/farlands_reloaded.txt rename to mods/misc/xcompat/test/nodelist/farlands_reloaded.txt diff --git a/mods/xcompat/test/nodelist/hades_revisited.txt b/mods/misc/xcompat/test/nodelist/hades_revisited.txt similarity index 100% rename from mods/xcompat/test/nodelist/hades_revisited.txt rename to mods/misc/xcompat/test/nodelist/hades_revisited.txt diff --git a/mods/xcompat/test/nodelist/mineclonia.txt b/mods/misc/xcompat/test/nodelist/mineclonia.txt similarity index 100% rename from mods/xcompat/test/nodelist/mineclonia.txt rename to mods/misc/xcompat/test/nodelist/mineclonia.txt diff --git a/mods/xcompat/test/nodelist/minetest.txt b/mods/misc/xcompat/test/nodelist/minetest.txt similarity index 100% rename from mods/xcompat/test/nodelist/minetest.txt rename to mods/misc/xcompat/test/nodelist/minetest.txt diff --git a/mods/xcompat/test/nodelist/voxelibre.txt b/mods/misc/xcompat/test/nodelist/voxelibre.txt similarity index 100% rename from mods/xcompat/test/nodelist/voxelibre.txt rename to mods/misc/xcompat/test/nodelist/voxelibre.txt