Advertisement
Radioactive12345

E2 Imperial Star Destroyer

Jan 28th, 2024
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.31 KB | Source Code | 0 0
  1. @name IMPERIAL STAR DESTROYER
  2. @inputs
  3. @outputs
  4. @persist T Vel Timer SoundFixTimer SoundFix
  5. @trigger
  6.  
  7. E=entity():isWeldedTo()
  8. if(first())
  9. {
  10. runOnTick(1)
  11. R=150
  12. G=150
  13. B=150
  14. Colour=vec(R,G,B)
  15. ColourR=vec(85,85,85)
  16.  
  17. ColourB=vec(0,200,255)
  18. E:setMass(50000)
  19. entity():setMass(0)
  20. E:setAlpha(255)
  21.  
  22. if(E:type()!="prop_vehicle_prisoner_pod")
  23. {
  24. print("You must spawn the Chip on a seat")
  25. selfDestructAll()
  26. }
  27. function cHolo(Index, Model:string, Position:vector, Angle:angle, Scale:vector)
  28. {
  29. holoCreate(Index)
  30. holoModel(Index,Model)
  31. holoPos(Index,Position)
  32. holoAng(Index,Angle)
  33. holoScale(Index,Scale)
  34. holoShadow(Index,1)
  35. holoParent(Index,E)
  36.  
  37. }
  38. cHolo(1,"cube",E:toWorld(vec(0,0,0)),E:toWorld(ang(0,0,0)),vec(35,10,8)) #Cabine
  39.  
  40. cHolo(2,"cube",E:toWorld(vec(101,0,42)),E:toWorld(ang(10,0,0)),vec(18,10,4)) #peice of cabine
  41. cHolo(3,"cube",E:toWorld(vec(-101,0,42)),E:toWorld(ang(-10,0,0)),vec(18,10,4)) #peice of cabine
  42.  
  43. cHolo(4,"cube",E:toWorld(vec(101,0,-42)),E:toWorld(ang(-10,0,0)),vec(18,10,4)) #peice of cabine
  44. cHolo(5,"cube",E:toWorld(vec(-101,0,-42)),E:toWorld(ang(10,0,0)),vec(18,10,4)) #peice of cabine
  45.  
  46. cHolo(6,"cube",E:toWorld(vec(111,0,70)),E:toWorld(ang(10,0,0)),vec(19,11,1)) #peice of cabine
  47. cHolo(7,"cube",E:toWorld(vec(-111,0,70)),E:toWorld(ang(-10,0,0)),vec(19,11,1)) #peice of cabine
  48.  
  49. cHolo(8,"cube",E:toWorld(vec(111,0,-70)),E:toWorld(ang(-10,0,0)),vec(19,11,1)) #peice of cabine
  50. cHolo(9,"cube",E:toWorld(vec(-111,0,-70)),E:toWorld(ang(10,0,0)),vec(19,11,1)) #peice of cabine
  51.  
  52. cHolo(10,"cube",E:toWorld(vec(40,0,90)),E:toWorld(ang(0,0,0)),vec(2,2,8)) #peice of head
  53. cHolo(11,"cube",E:toWorld(vec(-40,0,90)),E:toWorld(ang(0,0,0)),vec(2,2,8)) #peice of head
  54.  
  55. cHolo(12,"cube",E:toWorld(vec(0,0,125)),E:toWorld(ang(0,0,0)),vec(12,4,2.5)) #head
  56.  
  57. cHolo(13,"cube",E:toWorld(vec(170,0,80)),E:toWorld(ang(0,0,0)),vec(3,3,6)) #right ear
  58. cHolo(14,"hq_sphere",E:toWorld(vec(170,0,120)),E:toWorld(ang(0,0,0)),vec(6,6,6)) #right ear
  59.  
  60. cHolo(15,"cube",E:toWorld(vec(-170,0,80)),E:toWorld(ang(0,0,0)),vec(3,3,6)) #right ear
  61. cHolo(16,"hq_sphere",E:toWorld(vec(-170,0,120)),E:toWorld(ang(0,0,0)),vec(6,6,6)) #right ear
  62.  
  63. cHolo(17,"cube",E:toWorld(vec(0,-60,-80)),E:toWorld(ang(0,0,0)),vec(12,12,24)) #neck
  64.  
  65. cHolo(18,"cube",E:toWorld(vec(-111,100,-190)),E:toWorld(ang(-10,0,0)),vec(20.6,60,10)) #corpus 1
  66. cHolo(19,"cube",E:toWorld(vec(111,100,-190)),E:toWorld(ang(10,0,0)),vec(20.6,60,10)) #corpus 1
  67.  
  68. cHolo(20,"cube",E:toWorld(vec(-166,80,-230)),E:toWorld(ang(-10,0,0)),vec(30,100,10)) #corpus 2
  69. cHolo(21,"cube",E:toWorld(vec(166,80,-230)),E:toWorld(ang(10,0,0)),vec(30,100,10)) #corpus 2
  70.  
  71. cHolo(22,"cube",E:toWorld(vec(-166,380,-230)),E:toWorld(ang(-10,0,0)),vec(30,100,10)) #corpus 2
  72. cHolo(23,"cube",E:toWorld(vec(166,380,-230)),E:toWorld(ang(10,0,0)),vec(30,100,10)) #corpus 2
  73.  
  74. cHolo(24,"cube",E:toWorld(vec(-290,660,-325.35)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/1
  75. cHolo(25,"cube",E:toWorld(vec(290,660,-325.35)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/1
  76.  
  77. cHolo(26,"cube",E:toWorld(vec(-600,80,-380)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/2
  78. cHolo(27,"cube",E:toWorld(vec(600,80,-380)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/2
  79.  
  80. cHolo(28,"cube",E:toWorld(vec(-280,80,-323.56)),E:toWorld(ang(-10,0,0)),vec(100,100,5)) #corpus 3/3
  81. cHolo(29,"cube",E:toWorld(vec(280,80,-323.56)),E:toWorld(ang(10,0,0)),vec(100,100,5)) #corpus 3/3
  82.  
  83. cHolo(30,"cube",E:toWorld(vec(-142.5,1200,-299.35)),E:toWorld(ang(-10,0,0)),vec(25,100,5)) #corpus 3/4
  84. cHolo(31,"cube",E:toWorld(vec(142.5,1200,-299.35)),E:toWorld(ang(10,0,0)),vec(25,100,5)) #corpus 3/4
  85.  
  86. cHolo(32,"cube",E:toWorld(vec(500,512,-362)),E:toWorld(ang(9,27.5,4.65)),vec(100,100,5)) #right wedge corpus
  87.  
  88. cHolo(33,"cube",E:toWorld(vec(355,1000,-335)),E:toWorld(ang(9,27.5,4.65)),vec(35,100,5)) #right wedge corpus
  89.  
  90. 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
  91.  
  92. cHolo(35,"cube",E:toWorld(vec(-500,512,-362)),E:toWorld(ang(-9,-27.5,4.65)),vec(100,100,5)) #left wedge corpus
  93.  
  94. cHolo(36,"cube",E:toWorld(vec(-355,1000,-335)),E:toWorld(ang(-9,-27.5,4.65)),vec(35,100,5)) #left wedge corpus
  95.  
  96. 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
  97.  
  98. cHolo(38,"cube",E:toWorld(vec(-82.5,1500,-290)),E:toWorld(ang(-10,0,0)),vec(15,100,5)) #corpus 3/5
  99. cHolo(39,"cube",E:toWorld(vec(82.5,1500,-290)),E:toWorld(ang(10,0,0)),vec(15,100,5)) #corpus 3/5
  100.  
  101. 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
  102. 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
  103.  
  104. 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
  105. 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
  106.  
  107. 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
  108. 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
  109.  
  110. #UNDER CORPUS
  111.  
  112. cHolo(46,"cube",E:toWorld(vec(-580,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
  113.  
  114. cHolo(47,"cube",E:toWorld(vec(0,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
  115.  
  116. cHolo(48,"cube",E:toWorld(vec(580,75,-550)),E:toWorld(ang(0,0,0)),vec(100,100,5)) #corpus 3/1
  117.  
  118. cHolo(49,"cube",E:toWorld(vec(0,670,-524)),E:toWorld(ang(0,0,5)),vec(100,100,5)) #corpus 3/1
  119.  
  120. cHolo(50,"cube",E:toWorld(vec(0,1250,-472.5)),E:toWorld(ang(0,0,5)),vec(35,100,5)) #corpus 3/1
  121.  
  122. cHolo(51,"cube",E:toWorld(vec(0,1675,-430.5)),E:toWorld(ang(0,0,5)),vec(10,35,5)) #corpus 3/1
  123.  
  124. cHolo(52,"cube",E:toWorld(vec(-475,500,-544)),E:toWorld(ang(4,-27.5,5)),vec(100,100,5)) #corpus 3/1
  125.  
  126. cHolo(53,"cube",E:toWorld(vec(-316,1000,-492.5)),E:toWorld(ang(4,-27.5,5)),vec(35,100,5)) #corpus 3/1
  127.  
  128. cHolo(54,"cube",E:toWorld(vec(-192.5,1500,-440)),E:toWorld(ang(4,-27.5,5)),vec(15,100,5)) #corpus 3/1
  129.  
  130. cHolo(54,"cube",E:toWorld(vec(-140.5,1575,-435)),E:toWorld(ang(4,-27.5,5)),vec(15,100,5)) #corpus 3/1
  131.  
  132. cHolo(55,"cube",E:toWorld(vec(475,500,-544)),E:toWorld(ang(-4,27.5,5)),vec(100,100,5)) #corpus 3/1
  133.  
  134. cHolo(56,"cube",E:toWorld(vec(316,1000,-492.5)),E:toWorld(ang(-4,27.5,5)),vec(35,100,5)) #corpus 3/1
  135.  
  136. cHolo(57,"cube",E:toWorld(vec(192.5,1500,-440)),E:toWorld(ang(-4,27.5,5)),vec(15,100,5)) #corpus 3/1
  137.  
  138. cHolo(58,"cube",E:toWorld(vec(140.5,1575,-435)),E:toWorld(ang(-4,27.5,5)),vec(15,100,5)) #corpus 3/1
  139.  
  140. # END OF UNDER CORPUS
  141.  
  142. cHolo(59,"cube",E:toWorld(vec(0,-125,-375)),E:toWorld(ang(0,0,0)),vec(50,10,25)) #inside corpus
  143.  
  144. cHolo(60,"cube",E:toWorld(vec(420,-125,-447.5)),E:toWorld(ang(0,0,0)),vec(120,10,13)) #inside corpus
  145.  
  146. cHolo(61,"cube",E:toWorld(vec(-420,-125,-447.5)),E:toWorld(ang(0,0,0)),vec(120,10,13)) #inside corpus
  147.  
  148. cHolo(62,"cube",E:toWorld(vec(0,125,-447.5)),E:toWorld(ang(0,0,0)),vec(500,100,20)) #inside corpus
  149.  
  150. cHolo(63,"cube",E:toWorld(vec(0,700,-425)),E:toWorld(ang(0,0,0)),vec(500,100,14)) #inside corpus
  151.  
  152. cHolo(64,"cube",E:toWorld(vec(0,1300,-400)),E:toWorld(ang(0,0,0)),vec(30,100,10)) #inside corpus
  153.  
  154. cHolo(72,"hq_tube",E:toWorld(vec(0,-250,-375)),E:toWorld(ang(0,0,90)),vec(25,25,10)) #thruster
  155. cHolo(73,"hq_cylinder",E:toWorld(vec(0,-250,-375)),E:toWorld(ang(0,0,90)),vec(20,20,5)) #thruster inside
  156.  
  157. cHolo(74,"hq_tube",E:toWorld(vec(380,-250,-420)),E:toWorld(ang(0,0,90)),vec(15,15,5)) #thruster
  158. cHolo(75,"hq_cylinder",E:toWorld(vec(380,-250,-420)),E:toWorld(ang(0,0,90)),vec(13,13,2)) #thruster inside
  159.  
  160. cHolo(76,"hq_tube",E:toWorld(vec(-380,-250,-420)),E:toWorld(ang(0,0,90)),vec(15,15,5)) #thruster
  161. cHolo(77,"hq_cylinder",E:toWorld(vec(-380,-250,-420)),E:toWorld(ang(0,0,90)),vec(13,13,2)) #thruster inside
  162.  
  163. for(I=1,58)
  164. {
  165. holoColor(I,Colour)
  166. }
  167.  
  168. for(I=59,71)
  169. {
  170. holoColor(I,ColourR)
  171. }
  172.  
  173. holoColor(72,ColourR)
  174. holoColor(74,ColourR)
  175. holoColor(76,ColourR)
  176.  
  177. holoColor(73,ColourB)
  178. holoColor(75,ColourB)
  179. holoColor(77,ColourB)
  180.  
  181. holoMaterial(73,"models/props_combine/combine_interface_disp")
  182. holoMaterial(75,"models/props_combine/combine_interface_disp")
  183. holoMaterial(77,"models/props_combine/combine_interface_disp")
  184.  
  185. holoEntity(73):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
  186. holoEntity(75):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
  187. holoEntity(77):setTrails(840,20,2.5,"trails/physbeam",vec(0,255,255), 255)
  188. }
  189. Chair=entity():isWeldedTo()
  190. Driver=Chair:driver()
  191. W=Driver:keyForward()
  192. S=Driver:keyBack()
  193. Rvel=E:angVel():roll()
  194. Pvel=E:angVel():pitch()
  195. Yvel=E:angVel():yaw()
  196. Pd=E:angles():pitch()/110
  197. R1=E:angles():roll()/110
  198. Range=rangerOffset(100,E:pos()+vec(0,0,-8),-E:up())
  199. Height=Range:distance()
  200. E:applyForce(-E:vel()*E:mass())
  201. E:applyAngForce(ang(Rvel,-Yvel,-Pvel)*E:mass())
  202. E:applyForce(vec(0,0,1)*E:mass()*7.511255)
  203. if(Height<57.5|!Driver)
  204. {
  205. E:applyForce(vec(0,0,1)*E:mass()*(57.5-Height))
  206. E:applyForce(-vec(0,0,1)*E:mass()*5*(Height-57.5))
  207. }
  208. E:applyAngForce(ang(R1,0,-Pd)*E:mass()*75)
  209. if(Driver)
  210. {
  211. if(Height>57.5)
  212. {
  213. Y=vec(Driver:eye():dot(Chair:right()),Driver:eye():dot(Chair:right()),0):y()
  214. }
  215. else{Y=0}
  216. if(Vel>750)
  217. {
  218. P=vec(0,Driver:eye():dot(Chair:up()),Driver:eye():dot(Chair:up())):z()
  219. }
  220. else{P=0}
  221. E:applyAngForce(ang(-P,-Y,Y)*E:mass()*75)
  222. SoundFixTimer++
  223. SoundFix=sin(SoundFixTimer)*2+2
  224. Speed=E:vel():length()
  225. Timer+=1
  226. if(Timer>500)
  227. {Timer=0}
  228. if(Timer==5){entity():soundPlay(1,0,"k_lab.teleport_active")}
  229. soundPitch(1,Speed*T*6+SoundFix)
  230. soundVolume(1, 150)
  231. }
  232. else{soundStop(1)}
  233. Forward=E:forward()*E:mass()*250
  234. E:applyForce((Forward+$Forward)*T)
  235. if(W){T+=0.01}
  236. if(S|!Driver){T-=0.01}
  237. elseif(S&Height<40){T-=0.005}
  238. if(T<0){T=0}
  239. if(T>5){T=5}
  240. Vel=E:vel():length()
  241. if(Driver&T<2&Height>60)
  242. {
  243. E:applyForce(-vec(0,0,1)*E:mass()*250)
  244. T=2
  245. }
  246. if(E:driver())
  247. {
  248. Active=1
  249. }
  250. else{Active=0}
  251.  
  252. if(changed(Active)&Active)
  253. {
  254. E:hintDriver("Made by R.A.D.I.O.A.C.T.I.V.E",3)
  255. E:hintDriver("W and S - force",3)
  256. E:hintDriver("Mouse aim to steer",3)
  257. }
  258.  
Tags: None
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement