Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @name IMPERIAL STAR DESTROYER
- @inputs
- @outputs
- @persist T Vel Timer SoundFixTimer SoundFix
- @trigger
- E=entity():isWeldedTo()
- if(first())
- {
- runOnTick(1)
- R=150
- G=150
- B=150
- Colour=vec(R,G,B)
- ColourR=vec(85,85,85)
- ColourB=vec(0,200,255)
- E:setMass(50000)
- entity():setMass(0)
- E:setAlpha(255)
- if(E:type()!="prop_vehicle_prisoner_pod")
- {
- print("You must spawn the Chip on a seat")
- selfDestructAll()
- }
- function cHolo(Index, Model:string, Position:vector, Angle:angle, Scale:vector)
- {
- holoCreate(Index)
- holoModel(Index,Model)
- holoPos(Index,Position)
- holoAng(Index,Angle)
- holoScale(Index,Scale)
- holoShadow(Index,1)
- holoParent(Index,E)
- }
- cHolo(1,"cube",E:toWorld(vec(0,0,0)),E:toWorld(ang(0,0,0)),vec(35,10,8)) #Cabine
- cHolo(2,"cube",E:toWorld(vec(101,0,42)),E:toWorld(ang(10,0,0)),vec(18,10,4)) #peice of cabine
- cHolo(3,"cube",E:toWorld(vec(-101,0,42)),E:toWorld(ang(-10,0,0)),vec(18,10,4)) #peice of cabine
- cHolo(4,"cube",E:toWorld(vec(101,0,-42)),E:toWorld(ang(-10,0,0)),vec(18,10,4)) #peice of cabine
- cHolo(5,"cube",E:toWorld(vec(-101,0,-42)),E:toWorld(ang(10,0,0)),vec(18,10,4)) #peice of cabine
- cHolo(6,"cube",E:toWorld(vec(111,0,70)),E:toWorld(ang(10,0,0)),vec(19,11,1)) #peice of cabine
- cHolo(7,"cube",E:toWorld(vec(-111,0,70)),E:toWorld(ang(-10,0,0)),vec(19,11,1)) #peice of cabine
- cHolo(8,"cube",E:toWorld(vec(111,0,-70)),E:toWorld(ang(-10,0,0)),vec(19,11,1)) #peice of cabine
- cHolo(9,"cube",E:toWorld(vec(-111,0,-70)),E:toWorld(ang(10,0,0)),vec(19,11,1)) #peice of cabine
- cHolo(10,"cube",E:toWorld(vec(40,0,90)),E:toWorld(ang(0,0,0)),vec(2,2,8)) #peice of head
- cHolo(11,"cube",E:toWorld(vec(-40,0,90)),E:toWorld(ang(0,0,0)),vec(2,2,8)) #peice of head
- cHolo(12,"cube",E:toWorld(vec(0,0,125)),E:toWorld(ang(0,0,0)),vec(12,4,2.5)) #head
- cHolo(13,"cube",E:toWorld(vec(170,0,80)),E:toWorld(ang(0,0,0)),vec(3,3,6)) #right ear
- cHolo(14,"hq_sphere",E:toWorld(vec(170,0,120)),E:toWorld(ang(0,0,0)),vec(6,6,6)) #right ear
- cHolo(15,"cube",E:toWorld(vec(-170,0,80)),E:toWorld(ang(0,0,0)),vec(3,3,6)) #right ear
- cHolo(16,"hq_sphere",E:toWorld(vec(-170,0,120)),E:toWorld(ang(0,0,0)),vec(6,6,6)) #right ear
- cHolo(17,"cube",E:toWorld(vec(0,-60,-80)),E:toWorld(ang(0,0,0)),vec(12,12,24)) #neck
- cHolo(18,"cube",E:toWorld(vec(-111,100,-190)),E:toWorld(ang(-10,0,0)),vec(20.6,60,10)) #corpus 1
- cHolo(19,"cube",E:toWorld(vec(111,100,-190)),E:toWorld(ang(10,0,0)),vec(20.6,60,10)) #corpus 1
- cHolo(20,"cube",E:toWorld(vec(-166,80,-230)),E:toWorld(ang(-10,0,0)),vec(30,100,10)) #corpus 2
- cHolo(21,"cube",E:toWorld(vec(166,80,-230)),E:toWorld(ang(10,0,0)),vec(30,100,10)) #corpus 2
- cHolo(22,"cube",E:toWorld(vec(-166,380,-230)),E:toWorld(ang(-10,0,0)),vec(30,100,10)) #corpus 2
- cHolo(23,"cube",E:toWorld(vec(166,380,-230)),E:toWorld(ang(10,0,0)),vec(30,100,10)) #corpus 2
- cHolo(24,"cube",E:toWorld(vec(-290,660,-325.35)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/1
- cHolo(25,"cube",E:toWorld(vec(290,660,-325.35)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/1
- cHolo(26,"cube",E:toWorld(vec(-600,80,-380)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/2
- cHolo(27,"cube",E:toWorld(vec(600,80,-380)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/2
- cHolo(28,"cube",E:toWorld(vec(-280,80,-323.56)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/3
- cHolo(29,"cube",E:toWorld(vec(280,80,-323.56)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/3
- cHolo(30,"cube",E:toWorld(vec(-142.5,1200,-299.35)),E:toWorld(ang(-10,0,0)),vec(25,100,5)) #corpus 3/4
- cHolo(31,"cube",E:toWorld(vec(142.5,1200,-299.35)),E:toWorld(ang(10,0,0)),vec(25,100,5)) #corpus 3/4
- cHolo(32,"cube",E:toWorld(vec(500,512,-362)),E:toWorld(ang(9,27.5,4.65)),vec(100,100,5)) #right wedge corpus
- cHolo(33,"cube",E:toWorld(vec(355,1000,-335)),E:toWorld(ang(9,27.5,4.65)),vec(35,100,5)) #right wedge corpus
- cHolo(34,"cube",E:toWorld(vec(202,1570,-307.5)),E:toWorld(ang(9,27.5,4.65)),vec(15,100,5)) #right wedge corpus
- cHolo(35,"cube",E:toWorld(vec(-500,512,-362)),E:toWorld(ang(-9,-27.5,4.65)),vec(100,100,5)) #left wedge corpus
- cHolo(36,"cube",E:toWorld(vec(-355,1000,-335)),E:toWorld(ang(-9,-27.5,4.65)),vec(35,100,5)) #left wedge corpus
- cHolo(37,"cube",E:toWorld(vec(-202,1570,-307.5)),E:toWorld(ang(-9,-27.5,4.65)),vec(15,100,5)) #left wedge corpus
- cHolo(38,"cube",E:toWorld(vec(-82.5,1500,-290)),E:toWorld(ang(-10,0,0)),vec(15,100,5)) #corpus 3/5
- cHolo(39,"cube",E:toWorld(vec(82.5,1500,-290)),E:toWorld(ang(10,0,0)),vec(15,100,5)) #corpus 3/5
- cHolo(40,"cube",E:toWorld(vec(-37.5,1650,-282.5)),E:toWorld(ang(-10,0,0)),vec(7.5,100,5)) #corpus 3/6
- cHolo(41,"cube",E:toWorld(vec(37.5,1650,-282.5)),E:toWorld(ang(10,0,0)),vec(7.5,100,5)) #corpus 3/6
- cHolo(42,"cube",E:toWorld(vec(-162.85,1750,-300.5)),E:toWorld(ang(-9,-27.5,4.65)),vec(7,100,5)) #left wedge corpus
- cHolo(43,"cube",E:toWorld(vec(162.85,1750,-300.5)),E:toWorld(ang(9,27.5,4.65)),vec(7,100,5)) #left wedge corpus
- cHolo(44,"cube",E:toWorld(vec(-28.5,1740,-282.5)),E:toWorld(ang(-10,0,0)),vec(5.75,100,5)) #corpus 3/7
- cHolo(45,"cube",E:toWorld(vec(28.5,1740,-282.5)),E:toWorld(ang(10,0,0)),vec(5.75,100,5)) #corpus 3/7
- #UNDER CORPUS
- cHolo(46,"cube",E:toWorld(vec(-580,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
- cHolo(47,"cube",E:toWorld(vec(0,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
- cHolo(48,"cube",E:toWorld(vec(580,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
- cHolo(49,"cube",E:toWorld(vec(0,670,-524)),E:toWorld(ang(0,0,5)),vec(100,100,5)) #corpus 3/1
- cHolo(50,"cube",E:toWorld(vec(0,1250,-472.5)),E:toWorld(ang(0,0,5)),vec(35,100,5)) #corpus 3/1
- cHolo(51,"cube",E:toWorld(vec(0,1675,-430.5)),E:toWorld(ang(0,0,5)),vec(10,35,5)) #corpus 3/1
- cHolo(52,"cube",E:toWorld(vec(-475,500,-544)),E:toWorld(ang(4,-27.5,5)),vec(100,100,5)) #corpus 3/1
- cHolo(53,"cube",E:toWorld(vec(-316,1000,-492.5)),E:toWorld(ang(4,-27.5,5)),vec(35,100,5)) #corpus 3/1
- cHolo(54,"cube",E:toWorld(vec(-192.5,1500,-440)),E:toWorld(ang(4,-27.5,5)),vec(15,100,5)) #corpus 3/1
- cHolo(54,"cube",E:toWorld(vec(-140.5,1575,-435)),E:toWorld(ang(4,-27.5,5)),vec(15,100,5)) #corpus 3/1
- cHolo(55,"cube",E:toWorld(vec(475,500,-544)),E:toWorld(ang(-4,27.5,5)),vec(100,100,5)) #corpus 3/1
- cHolo(56,"cube",E:toWorld(vec(316,1000,-492.5)),E:toWorld(ang(-4,27.5,5)),vec(35,100,5)) #corpus 3/1
- cHolo(57,"cube",E:toWorld(vec(192.5,1500,-440)),E:toWorld(ang(-4,27.5,5)),vec(15,100,5)) #corpus 3/1
- cHolo(58,"cube",E:toWorld(vec(140.5,1575,-435)),E:toWorld(ang(-4,27.5,5)),vec(15,100,5)) #corpus 3/1
- # END OF UNDER CORPUS
- cHolo(59,"cube",E:toWorld(vec(0,-125,-375)),E:toWorld(ang(0,0,0)),vec(50,10,25)) #inside corpus
- cHolo(60,"cube",E:toWorld(vec(420,-125,-447.5)),E:toWorld(ang(0,0,0)),vec(120,10,13)) #inside corpus
- cHolo(61,"cube",E:toWorld(vec(-420,-125,-447.5)),E:toWorld(ang(0,0,0)),vec(120,10,13)) #inside corpus
- cHolo(62,"cube",E:toWorld(vec(0,125,-447.5)),E:toWorld(ang(0,0,0)),vec(500,100,20)) #inside corpus
- cHolo(63,"cube",E:toWorld(vec(0,700,-425)),E:toWorld(ang(0,0,0)),vec(500,100,14)) #inside corpus
- cHolo(64,"cube",E:toWorld(vec(0,1300,-400)),E:toWorld(ang(0,0,0)),vec(30,100,10)) #inside corpus
- cHolo(72,"hq_tube",E:toWorld(vec(0,-250,-375)),E:toWorld(ang(0,0,90)),vec(25,25,10)) #thruster
- cHolo(73,"hq_cylinder",E:toWorld(vec(0,-250,-375)),E:toWorld(ang(0,0,90)),vec(20,20,5)) #thruster inside
- cHolo(74,"hq_tube",E:toWorld(vec(380,-250,-420)),E:toWorld(ang(0,0,90)),vec(15,15,5)) #thruster
- cHolo(75,"hq_cylinder",E:toWorld(vec(380,-250,-420)),E:toWorld(ang(0,0,90)),vec(13,13,2)) #thruster inside
- cHolo(76,"hq_tube",E:toWorld(vec(-380,-250,-420)),E:toWorld(ang(0,0,90)),vec(15,15,5)) #thruster
- cHolo(77,"hq_cylinder",E:toWorld(vec(-380,-250,-420)),E:toWorld(ang(0,0,90)),vec(13,13,2)) #thruster inside
- for(I=1,58)
- {
- holoColor(I,Colour)
- }
- for(I=59,71)
- {
- holoColor(I,ColourR)
- }
- holoColor(72,ColourR)
- holoColor(74,ColourR)
- holoColor(76,ColourR)
- holoColor(73,ColourB)
- holoColor(75,ColourB)
- holoColor(77,ColourB)
- holoMaterial(73,"models/props_combine/combine_interface_disp")
- holoMaterial(75,"models/props_combine/combine_interface_disp")
- holoMaterial(77,"models/props_combine/combine_interface_disp")
- holoEntity(73):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
- holoEntity(75):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
- holoEntity(77):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
- }
- Chair=entity():isWeldedTo()
- Driver=Chair:driver()
- W=Driver:keyForward()
- S=Driver:keyBack()
- Rvel=E:angVel():roll()
- Pvel=E:angVel():pitch()
- Yvel=E:angVel():yaw()
- Pd=E:angles():pitch()/110
- R1=E:angles():roll()/110
- Range=rangerOffset(100,E:pos()+vec(0,0,-8),-E:up())
- Height=Range:distance()
- E:applyForce(-E:vel()*E:mass())
- E:applyAngForce(ang(Rvel,-Yvel,-Pvel)*E:mass())
- E:applyForce(vec(0,0,1)*E:mass()*7.511255)
- if(Height<57.5|!Driver)
- {
- E:applyForce(vec(0,0,1)*E:mass()*(57.5-Height))
- E:applyForce(-vec(0,0,1)*E:mass()*5*(Height-57.5))
- }
- E:applyAngForce(ang(R1,0,-Pd)*E:mass()*75)
- if(Driver)
- {
- if(Height>57.5)
- {
- Y=vec(Driver:eye():dot(Chair:right()),Driver:eye():dot(Chair:right()),0):y()
- }
- else{Y=0}
- if(Vel>750)
- {
- P=vec(0,Driver:eye():dot(Chair:up()),Driver:eye():dot(Chair:up())):z()
- }
- else{P=0}
- E:applyAngForce(ang(-P,-Y,Y)*E:mass()*75)
- SoundFixTimer++
- SoundFix=sin(SoundFixTimer)*2+2
- Speed=E:vel():length()
- Timer+=1
- if(Timer>500)
- {Timer=0}
- if(Timer==5){entity():soundPlay(1,0,"k_lab.teleport_active")}
- soundPitch(1,Speed*T*6+SoundFix)
- soundVolume(1, 150)
- }
- else{soundStop(1)}
- Forward=E:forward()*E:mass()*250
- E:applyForce((Forward+$Forward)*T)
- if(W){T+=0.01}
- if(S|!Driver){T-=0.01}
- elseif(S&Height<40){T-=0.005}
- if(T<0){T=0}
- if(T>5){T=5}
- Vel=E:vel():length()
- if(Driver&T<2&Height>60)
- {
- E:applyForce(-vec(0,0,1)*E:mass()*250)
- T=2
- }
- if(E:driver())
- {
- Active=1
- }
- else{Active=0}
- if(changed(Active)&Active)
- {
- E:hintDriver("Made by R.A.D.I.O.A.C.T.I.V.E",3)
- E:hintDriver("W and S - force",3)
- E:hintDriver("Mouse aim to steer",3)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement