public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_effectName = stream.ReadString32(); m_duration = stream.ReadInt32(); m_maxStackSize = stream.ReadInt32(); m_damagePerTurn = stream.ReadInt32(); m_healingPerTurn = stream.ReadInt32(); m_healingType = (HealingType)stream.ReadInt32(); m_perTurnHitDelayTurns = stream.ReadInt32(); m_absorbAmount = stream.ReadInt32(); m_nextTurnAbsorbAmount = stream.ReadInt32(); m_dontEndEarlyOnShieldDeplete = stream.ReadBoolean(); stream.AlignTo(); m_damagePerMoveSquare = stream.ReadInt32(); m_healPerMoveSquare = stream.ReadInt32(); m_techPointLossPerMoveSquare = stream.ReadInt32(); m_techPointGainPerMoveSquare = stream.ReadInt32(); m_techPointChangeOnStart = stream.ReadInt32(); m_techPointGainPerTurn = stream.ReadInt32(); m_techPointLossPerTurn = stream.ReadInt32(); m_invisBreakMode = (InvisibilityBreakMode)stream.ReadInt32(); m_removeInvisibilityOnLastResolveStart = stream.ReadBoolean(); stream.AlignTo(); m_removeRevealedOnLastResolveStart = stream.ReadBoolean(); stream.AlignTo(); m_statMods = new SerializedArray <AbilityStatMod>(assetFile, stream); m_statusChanges = new SerializedArray <StatusType>(assetFile, stream); m_statusDelayMode = (StatusDelayMode)stream.ReadInt32(); m_endTriggers = new SerializedArray <EffectEndTag>(assetFile, stream); m_sequencePrefabs = new SerializedVector <SerializedComponent>(assetFile, stream); m_tickSequencePrefab = new SerializedComponent(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { stream.AlignTo(); IgnoreForLocalization = stream.ReadBoolean(); stream.AlignTo(); Ability0 = new SerializedComponent(); Ability0.DeserializeAsset(assetFile, stream); SpritePath0 = stream.ReadString32(); Ability1 = new SerializedComponent(); Ability1.DeserializeAsset(assetFile, stream); SpritePath1 = stream.ReadString32(); Ability2 = new SerializedComponent(); Ability2.DeserializeAsset(assetFile, stream); SpritePath2 = stream.ReadString32(); Ability3 = new SerializedComponent(); Ability3.DeserializeAsset(assetFile, stream); SpritePath3 = stream.ReadString32(); Ability4 = new SerializedComponent(); Ability4.DeserializeAsset(assetFile, stream); SpritePath4 = stream.ReadString32(); Ability5 = new SerializedComponent(); Ability5.DeserializeAsset(assetFile, stream); SpritePath5 = stream.ReadString32(); Ability6 = new SerializedComponent(); Ability6.DeserializeAsset(assetFile, stream); SpritePath6 = stream.ReadString32(); BotDifficultyAbilityModSets = new SerializedVector <SerializedComponent>(); BotDifficultyAbilityModSets.DeserializeAsset(assetFile, stream); CompsToInspectInAbilityKitInspector = new SerializedVector <SerializedComponent>(); CompsToInspectInAbilityKitInspector.DeserializeAsset(assetFile, stream); SequenceDirNameOverride = stream.ReadString32(); AbilitySetupNotes = stream.ReadString32(); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_playersSelectRespawn = stream.ReadBoolean(); stream.AlignTo(); m_spawnInDuringMovement = stream.ReadBoolean(); stream.AlignTo(); m_respawnDelay = stream.ReadInt32(); m_respawnInnerRadius = stream.ReadSingle(); m_respawnOuterRadius = stream.ReadSingle(); m_respawnMethod = (RespawnMethod)stream.ReadInt32(); m_spawnRegionsTeamA = new BoardRegion(assetFile, stream); m_spawnRegionsTeamB = new BoardRegion(assetFile, stream); m_initialSpawnPointsTeamA = new BoardRegion(assetFile, stream); m_initialSpawnPointsTeamB = new BoardRegion(assetFile, stream); m_initialSpawnLookAtPoint = new SerializedComponent(assetFile, stream); m_startMinDistToFriend = stream.ReadSingle(); m_startMinDistToEnemy = stream.ReadSingle(); m_minDistToFriend = stream.ReadSingle(); m_minDistToEnemy = stream.ReadSingle(); m_generatePerimeterSize = stream.ReadSingle(); m_onlyAvoidVisibleEnemies = stream.ReadBoolean(); stream.AlignTo(); m_brushHidesRespawnFlares = stream.ReadBoolean(); stream.AlignTo(); m_respawnActorsCanCollectPowerUps = stream.ReadBoolean(); stream.AlignTo(); m_respawnActorsCanBeHitDuringMovement = stream.ReadBoolean(); stream.AlignTo(); m_minValidRespawnSquaresForPlayerSelection = stream.ReadInt32(); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_spawnerTitle = stream.ReadString32(); m_actorPrefab = new SerializedComponent(assetFile, stream); m_characterResourceLink = new SerializedComponent(assetFile, stream); m_actorBrain = new SerializedComponent(assetFile, stream); m_spawnPoint = new SerializedComponent(assetFile, stream); m_destination = new SerializedComponent(assetFile, stream); m_initialSpawnLookAtPoint = new SerializedComponent(assetFile, stream); m_spawnTurn = stream.ReadInt32(); m_respawnTime = stream.ReadInt32(); m_spawnScriptIndex = stream.ReadInt32(); m_despawnScriptIndex = stream.ReadInt32(); m_skinIndex = stream.ReadInt32(); m_patternIndex = stream.ReadInt32(); m_colorIndex = stream.ReadInt32(); m_team = (Team)stream.ReadInt32(); m_actorNameOverride = stream.ReadString32(); m_isPlayer = stream.ReadBoolean(); stream.AlignTo(); m_activationsOnDeath = new SerializedArray <ActivatableObject>(assetFile, stream); m_activationsOnSpawn = new SerializedArray <ActivatableObject>(assetFile, stream); m_applyEffectOnNPC = stream.ReadBoolean(); stream.AlignTo(); m_effectOnNPC = new StandardActorEffectData(assetFile, stream); m_tagsToApplyToActor = new SerializedArray <string>(assetFile, stream); m_actor = new SerializedComponent(assetFile, stream); m_id = stream.ReadInt32(); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_InsideMesh = new SerializedComponent(assetFile, stream); m_MiddleMesh = new SerializedComponent(assetFile, stream); m_OutsideMesh = new SerializedComponent(assetFile, stream); m_ArrowMesh = new SerializedComponent(assetFile, stream); m_CloseArrowMesh = new SerializedComponent(assetFile, stream); m_FarArrowMesh = new SerializedComponent(assetFile, stream); m_insideTexture = new SerializedComponent(assetFile, stream); m_middleTexture = new SerializedComponent(assetFile, stream); m_outsideTexture = new SerializedComponent(assetFile, stream); m_arrowTexture = new SerializedComponent(assetFile, stream); m_closeArrowTexture = new SerializedComponent(assetFile, stream); m_farArrowTexture = new SerializedComponent(assetFile, stream); m_chasingDiamonds = new SerializedArray <SerializedComponent>(assetFile, stream); m_chasingInnerRing = new SerializedComponent(assetFile, stream); m_chasingOuterRing = new SerializedComponent(assetFile, stream); m_chasingArrow = new SerializedComponent(assetFile, stream); m_chasingDiamondTexture = new SerializedComponent(assetFile, stream); m_chasingInnerRingTexture = new SerializedComponent(assetFile, stream); m_chasingOuterRingTexture = new SerializedComponent(assetFile, stream); m_chasingArrowTexture = new SerializedComponent(assetFile, stream); m_KnockbackMesh = new SerializedComponent(assetFile, stream); m_animationController = new SerializedComponent(assetFile, stream); m_movementContainer = new SerializedComponent(assetFile, stream); m_chasingContainer = new SerializedComponent(assetFile, stream); m_knockbackContainer = new SerializedComponent(assetFile, stream); m_chasingDiamondsContainer = new SerializedComponent(assetFile, stream); endPiece = new SerializedComponent(assetFile, stream); linePiece = new SerializedComponent(assetFile, stream); }
// Draw inspector gui public void OnInspectorGUI(Action onValueChanged) { if (m_component == null) { m_component = new SerializedComponent("Attaching Components"); } if (m_component.IsInvalidated) { m_component.Restore(); } var newAttachPolicy = (AttachPolicy)EditorGUILayout.EnumFlagsField("Attach Policy", m_attachPolicy); if (newAttachPolicy != m_attachPolicy) { m_attachPolicy = newAttachPolicy; onValueChanged(); } var newNameFormat = EditorGUILayout.TextField("Name Pattern", m_nameFormat); if (newNameFormat != m_nameFormat) { m_nameFormat = newNameFormat; onValueChanged(); } EditorGUI.BeginChangeCheck(); m_component.OnInspectorGUI(); if (EditorGUI.EndChangeCheck()) { m_component.Save(); onValueChanged(); } GUILayout.Space(10f); GUILayout.Box("", GUILayout.ExpandWidth(true), GUILayout.Height(1)); using (new EditorGUILayout.HorizontalScope()) { m_selectedIndex = EditorGUILayout.Popup("Component", m_selectedIndex, ComponentMenuUtility.GetComponentNames()); using (new EditorGUI.DisabledScope(m_selectedIndex < 0)) { if (GUILayout.Button("Add", GUILayout.Width(40))) { var type = ComponentMenuUtility.GetComponentTypes()[m_selectedIndex]; var c = m_component.AddComponent(type); if (c != null) { m_component.Save(); onValueChanged(); } } } } }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_backgroundTexture = new SerializedComponent(assetFile, stream); m_combatTextLifetime = stream.ReadSingle(); m_combatTextScrollSpeed = stream.ReadSingle(); m_combatTextSize = stream.ReadInt32(); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { EventType = (PassiveEventType)(object)stream.ReadInt32(); CausalAbilities = new SerializedVector <SerializedMonoBehaviour>(); // CausalAbilities.DeserializeAsset(assetFile, stream); ResponseOnSelf = new SerializedComponent(assetFile, stream); ResponseOnOther = new SerializedComponent(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { mWayPoints = new SerializedVector <WayPoint>(assetFile, stream); InitalWaypoint = new SerializedComponent(assetFile, stream); m_PatrolStyle = (PatrolStyle)stream.ReadInt32(); m_Direction = (Direction)stream.ReadInt32(); m_Tag = stream.ReadString32(); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { base.DeserializeAsset(assetFile, stream); m_functioningVFX = new SerializedComponent(assetFile, stream); m_disruptedVFX = new SerializedComponent(assetFile, stream); m_perSquareFunctioningVFX = new SerializedVector <SerializedComponent>(assetFile, stream); m_perSquareDisruptedVFX = new SerializedVector <SerializedComponent>(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_TopIndicatorPiece = new SerializedComponent(assetFile, stream); m_IndicatorParent = new SerializedComponent(assetFile, stream); m_diamondContainer = new SerializedComponent(assetFile, stream); m_movementLineParent = new SerializedComponent(assetFile, stream); m_chasingParent = new SerializedComponent(assetFile, stream); m_animationController = new SerializedComponent(assetFile, stream); }
// exports serialized component. If the prefab is not set, it is provided by the stage object. // for the export from the level editor, it is set through this component. public override SerializedComponent ExportSerializedComponent(SerializedObject serialObject) { // typeof(StageObject) and GetType() are the same in this context. SerializedComponent newComponent = new SerializedComponent(GetType()); serialObject.prefabPath = prefabPath; // gives prefab path in case it's not set. return(newComponent); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_LOSHighlightsParent = new SerializedComponent(assetFile, stream); m_showLOS = stream.ReadBoolean(); stream.AlignTo(); m_squareSize = stream.ReadSingle(); m_baselineHeight = stream.ReadInt32(); m_losLookup = new SerializedComponent(assetFile, stream); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_chainAbilityIndex = stream.ReadInt32(); m_effectOnSelf = new StandardEffectInfo(assetFile, stream); m_effectOnAlly = new StandardEffectInfo(assetFile, stream); m_effectOnEnemy = new StandardEffectInfo(assetFile, stream); m_cooldownReductionsOnSelf = new AbilityModCooldownReduction(assetFile, stream); m_timingSequencePrefab = new SerializedComponent(assetFile, stream); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { HealthBonus = stream.ReadInt32(); TechPointsBonus = stream.ReadInt32(); PersonalCreditsBonus = stream.ReadInt32(); MechanicPointAdjust = stream.ReadInt32(); Actions = new SerializedVector <PassiveActionType>(); Actions.DeserializeAsset(assetFile, stream); Effect = new SerializedComponent(assetFile, stream); // Effect = (StandardEffectInfo) (object) stream.ReadInt32(); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_script = new SerializedArray <SinglePlayerState>(assetFile, stream); m_forbiddenSquares = new BoardRegion(assetFile, stream); m_activationsOnForbiddenPath = new SerializedArray <ActivatableObject>(assetFile, stream); m_activationsOnFailedToShootAndMove = new SerializedArray <ActivatableObject>(assetFile, stream); m_activationsOnFailedToUseAllAbilities = new SerializedArray <ActivatableObject>(assetFile, stream); m_initialCameraRotationTarget = new SerializedComponent(assetFile, stream); m_chatTextOnLowHealth = new SerializedArray <SinglePlayerScriptedChat>(assetFile, stream); m_chatTextAtEndOfMatch = new SerializedArray <SinglePlayerScriptedChat>(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { stream.AlignTo(); SerializedGameObject = new SerializedComponent(assetFile, stream); Material = new SerializedComponent(assetFile, stream); IsTrigger = stream.ReadBoolean(); Enabled = stream.ReadBoolean(); stream.AlignTo(); Size = stream.ReadVector3(); Center = stream.ReadVector3(); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_effect = new StandardEffectInfo(assetFile, stream); m_credits = stream.ReadInt32(); m_healing = stream.ReadInt32(); m_damage = stream.ReadInt32(); m_techPoints = stream.ReadInt32(); m_permanentStatMods = new SerializedArray <AbilityStatMod>(assetFile, stream); m_permanentStatusChanges = new SerializedArray <StatusType>(assetFile, stream); m_sequenceToPlay = new SerializedComponent(assetFile, stream); // class [UnityEngine]UnityEngine.GameObject }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_stateTitle = stream.ReadString32(); m_allowedAbilities = new SerializedArray <int>(assetFile, stream); m_allowedDestinations = new BoardRegion(assetFile, stream); m_advanceScriptDestinations = new BoardRegion(assetFile, stream); m_respawnDestinations = new BoardRegion(assetFile, stream); m_allowedTargets = new BoardRegion(assetFile, stream); m_mustTargetNearCenter = stream.ReadBoolean(); stream.AlignTo(); m_onlyAllowWaypointMovement = stream.ReadBoolean(); stream.AlignTo(); m_rightClickHighlight = new BoardRegion(assetFile, stream); m_rightClickText = stream.ReadString32(); m_rightClickHeight = stream.ReadSingle(); m_shiftRightClickHighlight = new BoardRegion(assetFile, stream); m_shiftRightClickText = stream.ReadString32(); m_shiftRightClickHeight = stream.ReadSingle(); m_leftClickHighlight = new BoardRegion(assetFile, stream); m_leftClickText = stream.ReadString32(); m_leftClickHeight = stream.ReadSingle(); m_minAbilityTargetsForAiming = stream.ReadInt32(); m_bannerText = stream.ReadString32(); m_tutorialBoxText = new TextRegion(assetFile, stream); m_tutorialBoxText2 = new TextRegion(assetFile, stream); m_tutorialBoxText3 = new TextRegion(assetFile, stream); m_tutorialCameraMovementText = new TextRegion(assetFile, stream); m_tutorialCameraRotationText = new TextRegion(assetFile, stream); m_errorStringOnForbiddenPath = stream.ReadString32(); m_cameraRotationTarget = new SerializedComponent(assetFile, stream); m_advanceAfterSeconds = stream.ReadSingle(); m_minPlayerHitPoints = stream.ReadInt32(); m_minAllyHitPoints = stream.ReadInt32(); m_audioEventOnPreEnter = stream.ReadString32(); m_audioEventOnEnter = stream.ReadString32(); m_audioEventOnExit = stream.ReadString32(); m_chatTextOnEnter = new SerializedArray <SinglePlayerScriptedChat>(assetFile, stream); m_tutorialVideoPreviewOnEnter = stream.ReadString32(); m_markedForAdvanceState = stream.ReadBoolean(); stream.AlignTo(); m_stateIndex = stream.ReadInt32(); m_startTime = stream.ReadSingle(); m_tags = new SerializedArray <SinglePlayerTag>(assetFile, stream); m_activationsOnEnter = new SerializedArray <ActivatableObject>(assetFile, stream); m_activationsOnExit = new SerializedArray <ActivatableObject>(assetFile, stream); m_uiActivationsOnEnter = new SerializedArray <ActivatableUI>(assetFile, stream); m_uiActivationsOnExit = new SerializedArray <ActivatableUI>(assetFile, stream); m_npcsToSpawnOnEnter = new SerializedArray <string>(assetFile, stream); m_npcsToDespawnOnEnter = new SerializedArray <string>(assetFile, stream); m_advanceScriptIfActorDies = (ActorDiesTrigger)stream.ReadInt32(); m_advanceScriptIfActorDiesCount = stream.ReadInt32(); m_actorDeaths = stream.ReadInt32(); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_onShotSequencePrefab = new SerializedComponent(assetFile, stream); m_useShooterPosAsReactionSequenceTargetPos = stream.ReadBoolean(); stream.AlignTo(); m_healOnOwnerFromEnemyShot = stream.ReadInt32(); m_energyGainOnOwnerFromEnemyShot = stream.ReadInt32(); m_effectOnOwnerFromEnemyShot = new StandardEffectInfo(assetFile, stream); m_damageOnEnemyOnShot = stream.ReadInt32(); m_energyLossOnEnemyOnShot = stream.ReadInt32(); m_effectOnEnemyOnShot = new StandardEffectInfo(assetFile, stream); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { stream.AlignTo(); SerializedGameObject = new SerializedComponent(assetFile, stream); Enabled = stream.ReadBoolean(); stream.AlignTo(); Density = stream.ReadSingle(); Material = new SerializedComponent(assetFile, stream); IsTrigger = stream.ReadBoolean(); UsedByEffector = stream.ReadBoolean(); stream.AlignTo(); Offset = stream.ReadVector2(); Size = stream.ReadVector2(); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { base.DeserializeAsset(assetFile, stream); m_extraEnergyPerStepMod = new AbilityModPropertyInt(assetFile, stream); m_dropTrapWireOnStart = stream.ReadBoolean(); stream.AlignTo(); m_trapwirePattern = (AbilityGridPattern)stream.ReadInt32(); m_trapWireBarrierData = new StandardBarrierData(assetFile, stream); m_trapwireCastSequencePrefab = new SerializedComponent(assetFile, stream); m_additionalEffectOnStart = new StandardEffectInfo(assetFile, stream); m_additionalEffectCastSequencePrefab = new SerializedComponent(assetFile, stream); m_techPointGainPerAdjacentAlly = stream.ReadInt32(); m_techPointGrantedToAdjacentAllies = stream.ReadInt32(); m_effectToSelfForLandingInBrush = new StandardEffectInfo(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { base.DeserializeAsset(assetFile, stream); m_enemyDamageAmount = stream.ReadInt32(); m_enemyHitEffect = new StandardEffectInfo(assetFile, stream); m_allyHealAmount = stream.ReadInt32(); m_allyHitEffect = new StandardEffectInfo(assetFile, stream); m_maxRange = stream.ReadSingle(); m_includeAllies = stream.ReadBoolean(); stream.AlignTo(); m_includeEnemies = stream.ReadBoolean(); stream.AlignTo(); m_penetrateLos = stream.ReadBoolean(); stream.AlignTo(); m_castSequencePrefab = new SerializedComponent(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { PassiveName = stream.ReadString32(); SequencePrefab = new SerializedComponent(); SequencePrefab.DeserializeAsset(assetFile, stream); // PassiveStatMods = new SerializedVector<AbilityStatMod>(); PassiveStatMods = new SerializedVector <SerializedComponent>(); PassiveStatMods.DeserializeAsset(assetFile, stream); PassiveStatusChanges = new SerializedVector <StatusType>(); PassiveStatusChanges.DeserializeAsset(assetFile, stream); // OnEmptyTurn = new SerializedVector<EmptyTurnData>(); OnEmptyTurn = new SerializedVector <SerializedComponent>(); OnEmptyTurn.DeserializeAsset(assetFile, stream); // EventResponses = new SerializedVector<PassiveEventData>(); EventResponses = new SerializedVector <SerializedComponent>(); EventResponses.DeserializeAsset(assetFile, stream); // EffectsOnEveryTurn = new SerializedVector<StandardActorEffectData>(); EffectsOnEveryTurn = new SerializedVector <SerializedComponent>(); EffectsOnEveryTurn.DeserializeAsset(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_toolTip = stream.ReadString32(); m_debugUnlocalizedTooltip = stream.ReadString32(); m_savedStatusTypesForTooltips = new SerializedVector <StatusType>(assetFile, stream); m_shortToolTip = stream.ReadString32(); m_rewardString = stream.ReadString32(); m_sequencePrefab = new SerializedComponent(assetFile, stream); m_abilityName = stream.ReadString32(); m_flavorText = stream.ReadString32(); m_ultimate = stream.ReadBoolean(); stream.AlignTo(); m_previewVideo = stream.ReadString32(); m_expectedSequencePrefixForEditor = stream.ReadString32(); m_cooldown = stream.ReadInt32(); m_maxStocks = stream.ReadInt32(); m_stockRefreshDuration = stream.ReadInt32(); m_refillAllStockOnRefresh = stream.ReadBoolean(); stream.AlignTo(); m_initialStockAmount = stream.ReadInt32(); m_stockConsumedOnCast = stream.ReadInt32(); m_abilityManagedStockCount = stream.ReadBoolean(); stream.AlignTo(); m_runPriority = (AbilityPriority)stream.ReadInt32(); m_freeAction = stream.ReadBoolean(); stream.AlignTo(); m_techPointsCost = stream.ReadInt32(); m_techPointInteractions = new SerializedVector <TechPointInteraction>(assetFile, stream); m_actionAnimType = (ActorModelData.ActionAnimationType)stream.ReadInt32(); m_rotationVisibilityMode = (RotationVisibilityMode)stream.ReadInt32(); m_movementAdjustment = (MovementAdjustment)stream.ReadInt32(); m_movementSpeed = stream.ReadSingle(); m_movementDuration = stream.ReadSingle(); m_cameraBoundsMinHeight = stream.ReadSingle(); m_targetData = new SerializedArray <TargetData>(assetFile, stream); m_tags = new SerializedVector <AbilityTags>(assetFile, stream); m_statusWhenRequested = new SerializedVector <StatusType>(assetFile, stream); m_chainAbilities = new SerializedVector <SerializedMonoBehaviour>(assetFile, stream); m_targeterTemplateSwaps = new SerializedVector <TargeterTemplateSwapData>(assetFile, stream); }
// Use this for initialization void Start() { List <GameObjectInformation> goInfo = new List <GameObjectInformation>(); GameObject[] objectsInScene = GameObject.FindObjectsOfType <GameObject>(); foreach (GameObject go in objectsInScene) { GameObjectInformation serializedObject = new GameObjectInformation(go.name); Component[] componentsOnObject = go.GetComponents <Component>(); //foreach(Component comp in componentsOnObject) for (int j = 0; j < componentsOnObject.Length; j++) { SerializedComponent sComp = new SerializedComponent(); sComp.assemblyName = componentsOnObject[j].GetType().AssemblyQualifiedName; sComp.componentData = new List <ComponentInfo>(); PropertyInfo[] properties = componentsOnObject[j].GetType().GetProperties(); for (int i = 0; i < properties.Length; i++) { try { ComponentInfo cInfo = new ComponentInfo(); cInfo.property = properties[i].Name; cInfo.value = componentsOnObject[j].GetType().GetProperty(cInfo.property).GetValue(componentsOnObject[j]).ToString(); sComp.componentData.Add(cInfo); } catch { } } serializedObject.componentArray.Add(sComp); } goInfo.Add(serializedObject); } string serializedData = JsonConvert.SerializeObject(goInfo, Formatting.Indented); WriteToFile(serializedData); }
// saves prefab path public override void ImportSerializedComponent(SerializedObject serialObject, SerializedComponent component) { prefabPath = serialObject.prefabPath; return; }
public ISerializedItem ReadObject(SerializedComponent objInfo) { return(ReadObject(objInfo.PathId, objInfo.FileId)); }
public void DeserializeAsset(AssetFile assetFile, StreamReader stream) { operation = (ModOp)stream.ReadInt32(); value = new SerializedComponent(assetFile, stream); }
// Draw inspector gui public void OnInspectorGUI(Action onValueChanged) { if (m_component == null) { m_component = new SerializedComponent(); } if (m_component.IsInvalidated) { m_component.Restore(); m_component.SyncAttachedComponents(); if (m_goEditor == null) { m_goEditor = Editor.CreateEditor(m_component.InternalGameObject); } } var newAttachPolicy = (AttachPolicy)EditorGUILayout.EnumFlagsField("Attach Policy", m_attachPolicy); if (newAttachPolicy != m_attachPolicy) { m_attachPolicy = newAttachPolicy; onValueChanged(); } var newNameFormat = EditorGUILayout.TextField("Name Pattern", m_nameFormat); if (newNameFormat != m_nameFormat) { m_nameFormat = newNameFormat; onValueChanged(); } EditorGUI.BeginChangeCheck(); m_goEditor.DrawHeader(); GUILayout.Space(8f); EditorGUILayout.HelpBox("You can use {ParentName} variable for GameObject's naming.", MessageType.Info); GUILayout.Space(4f); // reset label Width () EditorGUIUtility.labelWidth = 0; m_activePolicy = (GameObjectPropertyPolicy)EditorGUILayout.EnumPopup("Active Flag", m_activePolicy); m_tagPolicy = (GameObjectPropertyPolicy)EditorGUILayout.EnumPopup("Tag", m_tagPolicy); m_layerPolicy = (GameObjectPropertyPolicy)EditorGUILayout.EnumPopup("Layer", m_layerPolicy); m_staticPolicy = (GameObjectPropertyPolicy)EditorGUILayout.EnumPopup("Static Flags", m_staticPolicy); m_componentSyncPolicy = (ComponentSyncPolicy)EditorGUILayout.EnumPopup("Extra Component", m_componentSyncPolicy); GUILayout.Space(8f); m_component.OnInspectorGUI(); if (EditorGUI.EndChangeCheck()) { m_component.Save(); onValueChanged(); } GUILayout.Space(10f); GUILayout.Box("", GUILayout.ExpandWidth(true), GUILayout.Height(1)); using (new EditorGUILayout.HorizontalScope()) { m_selectedIndex = EditorGUILayout.Popup("Component", m_selectedIndex, ComponentMenuUtility.GetComponentNames()); using (new EditorGUI.DisabledScope(m_selectedIndex < 0)) { if (GUILayout.Button("Add", GUILayout.Width(40))) { var type = ComponentMenuUtility.GetComponentTypes()[m_selectedIndex]; var c = m_component.AddComponent(type); if (c != null) { // addition of some component implicitly adds other component by RequireComponent attribute, // so ensure to track everything added. m_component.SyncAttachedComponents(); m_component.Save(); onValueChanged(); } } } } }