public SkyfallerPropertiesStats(SkyfallerProperties p) { this.hitRoof = p.hitRoof; this.reversed = p.reversed; this.explosionRadius = p.explosionRadius; this.explosionDamageFactor = p.explosionDamageFactor; this.shrapnelDistanceFactor = p.shrapnelDistanceFactor; this.movementType = p.movementType; this.speed = p.speed; this.cameraShake = p.cameraShake; this.rotateGraphicTowardsDirection = p.rotateGraphicTowardsDirection; this.anticipationSoundTicks = p.anticipationSoundTicks; this.motesPerCell = p.motesPerCell; if (p.shadowSize == null) this.shadowSize = new Vector2Stats(p.shadowSize); if (p.ticksToImpactRange == null) this.ticksToImpactRange = new MinMaxIntStats(p.ticksToImpactRange); if (p.metalShrapnelCountRange == null) this.metalShrapnelCountRange = new MinMaxIntStats(p.metalShrapnelCountRange); if (p.rubbleShrapnelCountRange == null) this.rubbleShrapnelCountRange = new MinMaxIntStats(p.rubbleShrapnelCountRange); Util.AssignDefStat(p.explosionDamage, out this.explosionDamage); Util.AssignDefStat(p.impactSound, out this.impactSound); Util.AssignDefStat(p.anticipationSound, out this.anticipationSound); }
public GraphicDataStats(GraphicData d) { this.texPath = d.texPath; //this.graphicClass = d.graphicClass; Util.AssignDefStat(d.shaderType, out this.shaderType); this.color = new ColorStats(d.color); this.colorTwo = new ColorStats(d.colorTwo); this.drawSize = new Vector2Stats(d.drawSize); this.onGroundRandomRotateAngle = d.onGroundRandomRotateAngle; this.drawRotated = d.drawRotated; this.allowFlip = d.allowFlip; this.flipExtraRotation = d.flipExtraRotation; if (d.shadowData != null) { this.shadowData = new ShadowDataStats(d.shadowData); } if (d.damageData != null) { this.damageData = new DamageGraphicDataStats(d.damageData); } this.linkType = d.linkType; this.linkFlags = d.linkFlags; }
public BuildingPropertiesStats(BuildingProperties p) { this.isEdifice = p.isEdifice; this.isInert = p.isInert; this.deconstructible = GetDeconstructible(p); this.alwaysDeconstructible = p.alwaysDeconstructible; this.claimable = p.claimable; this.isSittable = p.isSittable; this.expandHomeArea = p.expandHomeArea; this.uninstallWork = p.uninstallWork; this.wantsHopperAdjacent = p.wantsHopperAdjacent; this.allowWireConnection = p.allowWireConnection; this.shipPart = p.shipPart; this.canPlaceOverImpassablePlant = p.canPlaceOverImpassablePlant; this.heatPerTickWhileWorking = p.heatPerTickWhileWorking; this.canBuildNonEdificesUnder = p.canBuildNonEdificesUnder; this.canPlaceOverWall = p.canPlaceOverImpassablePlant; this.allowAutoroof = p.allowAutoroof; this.preventDeteriorationOnTop = p.preventDeteriorationOnTop; this.preventDeteriorationInside = p.preventDeteriorationInside; this.isMealSource = p.isMealSource; this.isNaturalRock = p.isNaturalRock; this.isResourceRock = p.isResourceRock; this.repairable = p.repairable; this.roofCollapseDamageMultiplier = p.roofCollapseDamageMultiplier; this.hasFuelingPort = p.hasFuelingPort; this.isPlayerEjectable = p.isPlayerEjectable; this.bed_healPerDay = p.bed_healPerDay; this.bed_defaultMedical = p.bed_defaultMedical; this.bed_showSleeperBody = p.bed_showSleeperBody; this.bed_humanlike = p.bed_humanlike; this.bed_maxBodySize = p.bed_maxBodySize; this.bed_caravansCanUse = p.bed_caravansCanUse; this.nutritionCostPerDispense = p.nutritionCostPerDispense; this.turretBurstWarmupTime = p.turretBurstWarmupTime; this.turretBurstCooldownTime = p.turretBurstCooldownTime; this.turretTopDrawSize = p.turretTopDrawSize; this.turretTopOffset = new Vector2Stats(p.turretTopOffset); this.ai_combatDangerous = p.ai_combatDangerous; this.ai_chillDestination = p.ai_chillDestination; this.mineableYield = p.mineableYield; this.mineableNonMinedEfficiency = p.mineableNonMinedEfficiency; this.mineableDropChance = p.mineableDropChance; this.mineableYieldWasteable = p.mineableYieldWasteable; this.mineableScatterCommonality = p.mineableScatterCommonality; this.ignoreStoredThingsBeauty = p.ignoreStoredThingsBeauty; this.isTrap = p.isTrap; this.trapDestroyOnSpring = p.trapDestroyOnSpring; this.trapPeacefulWildAnimalsSpringChanceFactor = p.trapPeacefulWildAnimalsSpringChanceFactor; this.unpoweredWorkTableWorkSpeedFactor = p.unpoweredWorkTableWorkSpeedFactor; //this.workSpeedPenaltyOutdoors = p.workSpeedPenaltyOutdoors; //this.workSpeedPenaltyTemperature = p.workSpeedPenaltyTemperature; this.watchBuildingStandRectWidth = p.watchBuildingStandRectWidth; this.haulToContainerDuration = p.haulToContainerDuration; if (p.mineableScatterLumpSizeRange != null) { this.mineableScatterLumpSizeRange = new MinMaxIntStats(p.mineableScatterLumpSizeRange); } if (p.watchBuildingStandDistanceRange != null) { this.watchBuildingStandDistanceRange = new MinMaxIntStats(p.watchBuildingStandDistanceRange); } if (p.blueprintGraphicData != null) { this.blueprintGraphicData = new GraphicDataStats(p.blueprintGraphicData); } if (p.trapUnarmedGraphicData != null) { this.trapUnarmedGraphicData = new GraphicDataStats(p.trapUnarmedGraphicData); } if (p.fullGraveGraphicData != null) { this.fullGraveGraphicData = new GraphicDataStats(p.fullGraveGraphicData); } Util.AssignDefStat(p.naturalTerrain, out this.naturalTerrain); Util.AssignDefStat(p.leaveTerrain, out this.leaveTerrain); Util.AssignDefStat(p.smoothedThing, out this.smoothedThing); Util.AssignDefStat(p.unsmoothedThing, out this.unsmoothedThing); Util.AssignDefStat(p.turretGunDef, out this.turretGunDef); Util.AssignDefStat(p.defaultPlantToGrow, out this.defaultPlantToGrow); Util.AssignDefStat(p.mineableThing, out this.mineableThing); Util.AssignDefStat(p.soundDispense, out this.soundDispense); Util.AssignDefStat(p.soundDoorOpenPowered, out this.soundDoorOpenPowered); Util.AssignDefStat(p.soundDoorClosePowered, out this.soundDoorClosePowered); Util.AssignDefStat(p.soundDoorOpenManual, out this.soundDoorOpenManual); Util.AssignDefStat(p.soundDoorCloseManual, out this.soundDoorCloseManual); Util.AssignDefStat(p.soundAmbient, out this.soundAmbient); Util.AssignDefStat(p.trapDamageCategory, out this.trapDamageCategory); Util.AssignDefStat(p.joyKind, out this.joyKind); Util.AssignDefStat(p.spawnedConceptLearnOpportunity, out this.spawnedConceptLearnOpportunity); Util.AssignDefStat(p.boughtConceptLearnOpportunity, out this.boughtConceptLearnOpportunity); Util.Populate(out this.buildingTags, p.buildingTags); }