public static void CreateSlowDownTrap(this UnitFactory factory, GameObject gameObject) { var moduleMgr = WorldManager.Instance.Module; var requiredModuleGroup = moduleMgr.TagToModuleGroupType(Constant.OBJECT_MODULE_GROUP_NAME); var unit = factory.CreateAsset(requiredModuleGroup, gameObject, false); unit.AddData <SlowDownTrapData>(); var unitData = unit.GetData <UnitData>(); unitData.stateTypeProperty.Value = UnitStateType.Init; }
public static void CreatePlayer(this UnitFactory factory, GameObject gameObject) { var moduleMgr = WorldManager.Instance.Module; var requiredModuleGroup = moduleMgr.TagToModuleGroupType(Constant.OBJECT_MODULE_GROUP_NAME) | moduleMgr.TagToModuleGroupType(Constant.CONTROL_MODULE_GROUP_NAME) | moduleMgr.TagToModuleGroupType(Constant.STATE_MODULE_GROUP_NAME) | moduleMgr.TagToModuleGroupType(Constant.SYNC_MODULE_GROUP_NAME); var unit = factory.CreateAsset(requiredModuleGroup, gameObject); unit.AddData <ObjectSyncData>(); factory.InitBuffModuleList(); AttachStateData(unit); AttachAttributeData(unit); AttachControlData(unit); AttachKeyboardControlData(unit); AttachBuffData(unit); var unitData = unit.GetData <UnitData>(); unitData.stateTypeProperty.Value = UnitStateType.Init; }