// Load dts shapes and merge animations datablock TSShapeConstructor(Robloxian2Dts) { baseShape = "./Robloxian2.dts"; sequence0 = "./R_root.dsq root"; sequence1 = "./R_run.dsq run"; sequence2 = "./R_run.dsq walk"; sequence3 = "./R_run.dsq back"; sequence4 = "./R_run.dsq side"; sequence5 = "./R_crouch.dsq crouch"; sequence6 = "./R_crouchfor.dsq crouchRun"; sequence7 = "./R_crouchfor.dsq crouchBack"; sequence8 = "./R_crouchfor.dsq crouchSide"; sequence9 = "./R_death.dsq death"; sequence10 = "./R_root.dsq look"; sequence11 = "./R_root.dsq headside"; sequence12 = "./R_root.dsq headUp"; sequence13 = "./R_jump.dsq jump"; sequence14 = "./R_jump.dsq standjump"; sequence15 = "./R_jump.dsq fall"; sequence16 = "./R_root.dsq land"; sequence17 = "./R_armattack.dsq armAttack"; sequence18 = "./R_armleft.dsq armReadyLeft"; sequence19 = "./R_armright.dsq armReadyRight"; sequence20 = "./R_armboth.dsq armReadyBoth"; sequence21 = "./R_root.dsq spearready"; sequence22 = "./R_root.dsq spearThrow"; sequence23 = "./R_root.dsq talk"; sequence24 = "./R_death.dsq death1"; sequence25 = "./R_root.dsq shiftUp"; sequence26 = "./R_root.dsq shiftDown"; sequence27 = "./R_rrecoil.dsq shiftAway"; sequence28 = "./R_root.dsq shiftTo"; sequence29 = "./R_root.dsq shiftLeft"; sequence30 = "./R_root.dsq shiftRight"; sequence31 = "./R_root.dsq rotCW"; sequence32 = "./R_root.dsq rotCCW"; sequence33 = "./R_root.dsq undo"; sequence34 = "./R_root.dsq plant"; sequence35 = "./R_sit.dsq sit"; sequence36 = "./R_root.dsq wrench"; sequence37 = "./R_root.dsq activate"; sequence38 = "./R_root.dsq activate2"; sequence39 = "./R_lrecoil.dsq leftrecoil"; }; datablock AudioProfile(Robloxian2JumpSound) { fileName = "base/data/sound/jump.wav"; description = AudioClose3d; preload = true; }; datablock DebrisData( Robloxian2Debris ) { explodeOnMaxBounce = false; elasticity = 0.15; friction = 0.5; lifetime = 4.0; lifetimeVariance = 0.0; minSpinSpeed = 40; maxSpinSpeed = 600; numBounces = 5; bounceVariance = 0; staticOnMaxBounce = true; gravModifier = 1.0; useRadiusMass = false; baseRadius = 1; velocity = 20.0; velocityVariance = 12.0; }; datablock PlayerData(Robloxian2Armor) { renderFirstPerson = false; emap = true; className = Armor; shapeFile = "./Robloxian2.dts"; cameraMaxDist = 7; cameRobloxianilt = 0;//0.174 * 2.5; //~25 degrees cameraVerticalOffset = 0; computeCRC = false; canObserve = true; cmdCategory = "Clients"; cameraDefaultFov = 90.0; cameraMinFov = 5.0; cameraMaxFov = 120.0; //debrisShapeName = "~/data/shapes/player/debris_player.dts"; //debris = horseDebris; aiAvoidThis = true; isSurvivor = 1; minLookAngle = -1.5708; maxLookAngle = 1.5708; maxFreelookAngle = 3.0; mass = 100; drag = 0.1; maxdrag = 0.52; density = 0.7; maxDamage = 150; maxEnergy = 10; repairRobloxiane = 0.33; energyPerDamagePoint = 75.0; rechargeRobloxiane = 0.4; runForce = PlayerStandardArmor.runForce; runEnergyDrain = 0; minRunEnergy = 0; maxForwardSpeed = 10; maxBackwardSpeed = 5; maxSideSpeed = 4; maxForwardCrouchSpeed = 10; maxBackwardCrouchSpeed = 5; maxSideCrouchSpeed = 1; maxForwardProneSpeed = 0; maxBackwardProneSpeed = 0; maxSideProneSpeed = 0; maxForwardWalkSpeed = 1; maxBackwardWalkSpeed = 0; maxSideWalkSpeed = 0; maxUnderwaterForwardSpeed = 8.4; maxUnderwaterBackwardSpeed = 7.8; maxUnderwaterSideSpeed = 7.8; jumpForce = 13 * 90; //8.3 * 90; jumpEnergyDrain = 0; minJumpEnergy = 0; jumpDelay = 0; minJetEnergy = 0; jetEnergyDrain = 0; canJet = 0; recoverDelay = 0; recoverRunForceScale = 1.2; minImpactSpeed = 250; speedDamageScale = 3.8; boundingBox = vectorScale("1.9 1.0 4.0", 2); //"2.5 2.5 2.4"; crouchBoundingBox = vectorScale("1.9 2.0 3.3", 2); //"2.5 2.5 2.4"; proneBoundingBox = vectorScale("1.9 1.0 4.0", 2); //"2.5 2.5 2.4"; pickupRadius = 0.75; // Damage location details boxNormalHeadPercentage = 0.83; boxNormalTorsoPercentage = 0.49; boxHeadLeftPercentage = 0; boxHeadRightPercentage = 1; boxHeadBackPercentage = 0; boxHeadFrontPercentage = 1; // Foot Prints //decalData = HorseFootprint; //decalOffset = 0.25; jetEmitter = ""; jetGroundEmitter = ""; jetGroundDistance = 4; //footPuffEmitter = LightPuffEmitter; footPuffNumParts = 10; footPuffRadius = 0.25; //dustEmitter = LiftoffDustEmitter; splash = PlayerSplash; splashVelocity = 4.0; splashAngle = 67.0; splashFreqMod = 300.0; splashVelEpsilon = 0.60; bubbleEmitTime = 0.1; splashEmitter[0] = PlayerFoamDropletsEmitter; splashEmitter[1] = PlayerFoamEmitter; splashEmitter[2] = PlayerBubbleEmitter; mediumSplashSoundVelocity = 10.0; hardSplashSoundVelocity = 20.0; exitSplashSoundVelocity = 5.0; // Controls over slope of runnable/jumpable surfaces runSurfaceAngle = 65; jumpSurfaceAngle = 66; minJumpSpeed = 20; maxJumpSpeed = 30; horizMaxSpeed = 68; horizResistSpeed = 33; horizResistFactor = 0.35; upMaxSpeed = 80; upResistSpeed = 25; upResistFactor = 0.3; footstepSplashHeight = 0.35; //NOTE: some sounds commented out until wav's are available JumpSound = Robloxian2JumpSound; // Footstep Sounds // FootSoftSound = HorseFootFallSound; // FootHardSound = HorseFootFallSound; // FootMetalSound = HorseFootFallSound; // FootSnowSound = HorseFootFallSound; // FootShallowSound = HorseFootFallSound; // FootWadingSound = HorseFootFallSound; // FootUnderwaterSound = HorseFootFallSound; //FootBubblesSound = FootLightBubblesSound; //movingBubblesSound = ArmorMoveBubblesSound; //waterBreathSound = WaterBreathMaleSound; //impactSoftSound = ImpactLightSoftSound; //impactHardSound = ImpactLightHardSound; //impactMetalSound = ImpactLightMetalSound; //impactSnowSound = ImpactLightSnowSound; impactWaterEasy = Splash1Sound; impactWaterMedium = Splash1Sound; impactWaterHard = Splash1Sound; groundImpactMinSpeed = 10.0; groundImpactShakeFreq = "4.0 4.0 4.0"; groundImpactShakeAmp = "1.0 1.0 1.0"; groundImpactShakeDuRobloxianion = 0.8; groundImpactShakeFalloff = 10.0; //exitingWater = ExitingWaterLightSound; observeParameters = "0.5 4.5 4.5"; // Inventory Items maxItems = 10; //total number of bricks you can carry maxWeapons = 5; //this will be controlled by mini-game code maxTools = 5; uiName = "Robloxian2"; rideable = False; lookUpLimit = 0.6; lookDownLimit = 0.2; canRide = true; showEnergyBar = false; paintable = true; brickImage = horseBrickImage; //the imageData to use for brick deployment //protection for passengers protectPassengersBurn = true; //protect passengers from the burning effect of explosions? protectPassengersRadius = true; //protect passengers from radius damage (explosions) ? protectPassengersDirect = false; //protect passengers from direct damage (bullets) ? }; package RobloxColor { function GameConnection::applyBodyColors(%client) { Parent::applyBodyColors(%client); if(%client.player.dataBlock $= "Robloxian2armor") { %client.player.setNodeColor("RArm",%client.RHandColor); %client.player.setNodeColor("LArm",%client.LHandColor); %client.player.setNodeColor("Head",%client.Headcolor); %client.player.setNodeColor("LFoot",%client.LLegColor); %client.player.setNodeColor("RFoot",%client.RLegColor); %client.player.setNodeColor("Chest",%client.ChestColor); } } }; activatePackage(RobloxColor);