/
githubmirror
/
vgstation13
Обзор
Документация
Войти
/
githubmirror
/
vgstation13
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
Bleeding-Edge
code/controllers/subsystem/init/rust.dm
37 строк
1 KB
Pieter-Jan Briers
In which /vg/station13 gets high. (#13270)
11 янв 2017, 21:43
11 янв 2017, 21:43
4970cde
Код
Авторство
О чём код?
// Only stores fusion reactions, but I had to move this out of the master controller so... var/datum/subsystem/rust/SSrust /datum/subsystem/rust name = "Rust" init_order = SS_INIT_RUST flags = SS_NO_FIRE var/list/fusion_reactions /datum/subsystem/rust/New() NEW_SS_GLOBAL(SSrust) // Populate fusion reactions. /datum/subsystem/rust/Initialize(timeofday) fusion_reactions = list() for (var/cur_reaction_type in typesof(/datum/fusion_reaction) - /datum/fusion_reaction) var/datum/fusion_reaction/cur_reaction = new cur_reaction_type() if (!fusion_reactions[cur_reaction.primary_reactant]) fusion_reactions[cur_reaction.primary_reactant] = list() fusion_reactions[cur_reaction.primary_reactant][cur_reaction.secondary_reactant] = cur_reaction if (!fusion_reactions[cur_reaction.secondary_reactant]) fusion_reactions[cur_reaction.secondary_reactant] = list() fusion_reactions[cur_reaction.secondary_reactant][cur_reaction.primary_reactant] = cur_reaction /datum/subsystem/rust/proc/get_fusion_reaction(var/primary_reactant, var/secondary_reactant) if (fusion_reactions.Find(primary_reactant)) var/list/secondary_reactions = fusion_reactions[primary_reactant] if (secondary_reactions.Find(secondary_reactant)) return fusion_reactions[primary_reactant][secondary_reactant]