public EntitiesPresetsInject(EntitiesPresets presets) { LevelTiles = new Dictionary <string, LevelTilePreset>(); foreach (var p in presets.LevelTiles) { var key = p.GameObject.NameID; LevelTiles.Add(key, p); } Player = presets.Player; CollectingItems = new Dictionary <string, CollectingItemPreset>(); foreach (var p in presets.CollectingItems) { var key = p.GameObject.NameID; CollectingItems.Add(key, p); } StatusEffectHandlers = new Dictionary <string, StatusEffectHandler>(); foreach (var p in presets.StatusEffectHandlers) { var key = p.EffectType.ToString(); StatusEffectHandlers.Add(key, p); } }
public static EcsEntity RLNewLevelObject(this EcsWorld world, PlayerPreset preset, Vector2 pos) { var go = VExt.NewGameObject(preset.GameObject, pos); var e = world.NewEntityWithGameObject(go, false); e.Set <PlayerComponent>(); var data = e.Set <NPCDataSheetComponent>(); data.Stats = Service <NPCDataSheet> .Get().NPCStats; data.PrimaryWeapon = Service <NPCDataSheet> .Get().PriamaryWeapon; data.SecondaryWeapon = Service <NPCDataSheet> .Get().SecondaryWeapon; data.StatusEffects = new List <StatusEffect>(); return(e); }