This commit is contained in:
Vasily Petrov 2026-06-18 01:18:29 +03:00
commit 2fe6ca2f65
1473 changed files with 251771 additions and 0 deletions

View file

@ -0,0 +1,512 @@
local registred_items = {}
-- Outfits ---------------------------------------------------------------------
class "se_outfit" (cse_alife_item_custom_outfit)
function se_outfit:__init (section) super (section)
self.secret_item = false
end
function se_outfit:on_register()
cse_alife_item_custom_outfit.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_outfit:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_custom_outfit.on_unregister( self )
end
function se_outfit:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_custom_outfit.can_switch_online(self)
end
class "se_helmet" (cse_alife_item_helmet)
function se_helmet:__init (section) super (section)
self.secret_item = false
end
function se_helmet:on_register()
cse_alife_item_helmet.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_helmet:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_helmet.on_unregister( self )
end
function se_helmet:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_helmet.can_switch_online(self)
end
-- Weapons ---------------------------------------------------------------------
class "se_weapon" (cse_alife_item_weapon)
function se_weapon:__init (section) super (section)
self.secret_item = false
end
function se_weapon:on_register()
cse_alife_item_weapon.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_weapon:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_weapon.on_unregister( self )
end
function se_weapon:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_weapon.can_switch_online(self)
end
class "se_weapon_shotgun" (cse_alife_item_weapon_shotgun)
function se_weapon_shotgun:__init (section) super (section)
self.secret_item = false
end
function se_weapon_shotgun:on_register()
cse_alife_item_weapon_shotgun.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_weapon_shotgun:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_weapon_shotgun.on_unregister( self )
end
function se_weapon_shotgun:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_weapon_shotgun.can_switch_online(self)
end
class "se_weapon_automatic_shotgun" (cse_alife_item_weapon_auto_shotgun)
function se_weapon_automatic_shotgun:__init (section) super (section)
self.secret_item = false
end
function se_weapon_automatic_shotgun:on_register()
cse_alife_item_weapon_auto_shotgun.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_weapon_automatic_shotgun:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_weapon_auto_shotgun.on_unregister( self )
end
function se_weapon_automatic_shotgun:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_weapon_auto_shotgun.can_switch_online(self)
end
class "se_weapon_magazined" (cse_alife_item_weapon_magazined)
function se_weapon_magazined:__init (section) super (section)
self.secret_item = false
end
function se_weapon_magazined:on_register()
cse_alife_item_weapon_magazined.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_weapon_magazined:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_weapon_magazined.on_unregister( self )
end
function se_weapon_magazined:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_weapon_magazined.can_switch_online(self)
end
class "se_weapon_magazined_w_gl" (cse_alife_item_weapon_magazined_w_gl)
function se_weapon_magazined_w_gl:__init (section) super (section)
self.secret_item = false
end
function se_weapon_magazined_w_gl:on_register()
cse_alife_item_weapon_magazined_w_gl.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_weapon_magazined_w_gl:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_weapon_magazined_w_gl.on_unregister( self )
end
function se_weapon_magazined_w_gl:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_weapon_magazined_w_gl.can_switch_online(self)
end
-- Items -----------------------------------------------------------------------
class "se_item" (cse_alife_item)
function se_item:__init (section) super (section)
self.secret_item = false
end
function se_item:on_register()
cse_alife_item.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_item:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item.on_unregister( self )
end
function se_item:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item.can_switch_online(self)
end
class "se_item_torch" (cse_alife_item_torch)
function se_item_torch:__init (section) super (section)
self.secret_item = false
end
function se_item_torch:on_register()
cse_alife_item_torch.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_item_torch:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_torch.on_unregister( self )
end
function se_item_torch:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_torch.can_switch_online(self)
end
--' ФИзобъекты
class "se_physic" (cse_alife_object_physic)
function se_physic:__init (section) super (section)
self.secret_item = false
end
function se_physic:on_register()
cse_alife_object_physic.on_register(self)
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_physic:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_object_physic.on_unregister(self)
end
function se_physic:keep_saved_data_anyway()
return true
end
function se_physic:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_object_physic.can_switch_online(self)
end
class "se_lamp" (cse_alife_object_hanging_lamp)
function se_lamp:__init (section) super (section)
self.secret_item = false
end
function se_lamp:on_register()
cse_alife_object_hanging_lamp.on_register(self)
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_lamp:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_object_hanging_lamp.on_unregister(self)
end
function se_lamp:keep_saved_data_anyway()
return true
end
function se_lamp:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_object_hanging_lamp.can_switch_online(self)
end
-- AMMO ------------------------------------------------------------------------
class "se_ammo" (cse_alife_item_ammo)
function se_ammo:__init (section) super (section)
self.secret_item = false
end
function se_ammo:on_register()
cse_alife_item_ammo.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_ammo:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_item_ammo.on_unregister(self)
end
function se_ammo:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_ammo.can_switch_online(self)
end
-- IX-Ray START
function se_ammo:keep_saved_data_anyway()
return false
end
-- IX-Ray END
-- GRENADES --------------------------------------------------------------------------------------------------------------------------
class "se_grenade" (cse_alife_item_grenade)
function se_grenade:__init (section) super (section)
self.secret_item = false
end
function se_grenade:on_register()
cse_alife_item_grenade.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_grenade:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_item_grenade.on_unregister(self)
end
function se_grenade:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_grenade.can_switch_online(self)
end
-- EATEBLE ---------------------------------------------------------------------------------------------------------------------------
class "se_eatable" (cse_alife_item)
function se_eatable:__init (section) super (section)
self.secret_item = false
end
function se_eatable:on_register()
cse_alife_item.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_eatable:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_item.on_unregister(self)
end
function se_eatable:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item.can_switch_online(self)
end
-- INVENTORY BOX ---------------------------------------------------------------------------------------------------------------------
class "se_invbox" (cse_alife_inventory_box)
function se_invbox:__init (section) super (section)
self.secret_item = false
end
function se_invbox:on_register()
cse_alife_inventory_box.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_invbox:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_inventory_box.on_unregister(self)
end
function se_invbox:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_inventory_box.can_switch_online(self)
end
-- EXPLOSIVE -------------------------------------------------------------------------------------------------------------------------
class "se_explosive" (cse_alife_item_explosive)
function se_explosive:__init (section) super (section)
self.secret_item = false
end
function se_explosive:on_register()
cse_alife_item_explosive.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_explosive:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_item_explosive.on_unregister(self)
end
function se_explosive:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_explosive.can_switch_online(self)
end
-- PDA -------------------------------------------------------------------------------------------------------------------------------
class "se_pda" (cse_alife_item_pda)
function se_pda:__init (section) super (section)
self.secret_item = false
end
function se_pda:on_register()
cse_alife_item_pda.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_pda:on_unregister()
unregister_story_object_by_id(self.id)
cse_alife_item_pda.on_unregister(self)
end
function se_pda:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_pda.can_switch_online(self)
end
class "se_detector" (cse_alife_item_detector)
function se_detector:__init (section) super (section)
self.secret_item = false
end
function se_detector:on_register()
cse_alife_item_detector.on_register( self )
-- Проверяем кастомдату обьекта на наличие стори айди.
story_objects.check_spawn_ini_for_story_id(self)
-- Собираем статистику по предметам.
if registred_items[self:section_name()] == nil then
registred_items[self:section_name()] = 1
else
registred_items[self:section_name()] = registred_items[self:section_name()] + 1
end
self.secret_item = treasure_manager.get_treasure_manager():register_item(self)
end
function se_detector:on_unregister()
--' Отрегистрация в таскменеджере
unregister_story_object_by_id(self.id)
cse_alife_item_detector.on_unregister( self )
end
function se_detector:can_switch_online()
if(self.secret_item) then
return false
end
return cse_alife_item_detector.can_switch_online(self)
end
--------------------------------------------------------------------------------
function stats()
printf("*** SIM ITEMS STATISTIC ***")
for k,v in pairs(registred_items) do
printf("item = %s, num = %s", k, v)
end
end