Advertisement
noob_killer012345678

Untitled

May 26th, 2022 (edited)
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.08 KB | None | 0 0
  1. class Sans : Actor
  2. {
  3. int TiredLevel;
  4.  
  5. Default
  6. {
  7. Health 5000;
  8. Radius 20;
  9. Height 56;
  10. Mass 500;
  11. Speed 10;
  12. PainChance 10;
  13. Monster;
  14. MaxTargetRange 896;
  15. +FLOORCLIP
  16. +NOTARGET
  17. +NOBLOOD
  18. +DONTGIB
  19. SeeSound "SANSDANC";
  20. PainSound "SANSPAIN";
  21. DeathSound "SANSDIE";
  22. ActiveSound "SANSTALK";
  23. MeleeSound "vile/stop";
  24. Obituary "$O was killed by Sans the Skeleton";
  25. Tag "$FN_SANS";
  26. damagefactor "sans", 0;
  27. scale 2.0;
  28. }
  29. States
  30. {
  31. Spawn:
  32. TNT1 A 0 A_TiredReset();
  33. TNT1 A 0
  34. {
  35. bNoPain = False;
  36. }
  37. SANS YYZZ 10 A_Look;
  38. Loop;
  39. Sleep:
  40. SANS A 10
  41. {
  42. bNoPain = True;
  43. }
  44. SANS Y 10 A_ClearTarget;
  45. SANS AY 10;
  46. SANS YYZZYYZZYYZZYYZZYYZZYYZZYYZZYYZZ 10;
  47. Goto Spawn;
  48. See:
  49. TNT1 A 0 S_ChangeMusic("BADTIME");
  50. Goto XSee;
  51. XSee:
  52. SANS AABBCCDD 3 A_Chase;
  53. Loop;
  54. Missile:
  55. SANS G 0 A_TiredCheck();
  56. SANS G 0 BRIGHT A_Jump(256, "GasterAttack", "BoneWall", "RandomBone", "FastTravel", "GasterSpin");
  57. GasterAttack:
  58. SANS F 5 A_FaceTarget();
  59. SANS F 10 A_GasterSpawn();
  60. SANS F 10 A_FaceTarget();
  61. SANS F 8 A_FaceTarget();
  62. SANS G 10 BRIGHT A_FaceTarget();
  63. SANS G 10 A_FaceTarget();
  64. SANS G 10 A_FaceTarget();
  65. Goto See;
  66. BoneWall:
  67. SANS F 5 A_FaceTarget();
  68. SANS F 8 BRIGHT A_BoneWallSpawn();
  69. SANS F 2 A_FaceTarget();
  70. SANS G 10 A_FaceTarget();
  71. Goto See;
  72. RandomBone:
  73. SANS G 0 A_FaceTarget();
  74. SANS G 10 A_FaceTarget();
  75. SANS G 8 A_FaceTarget();
  76. SANS F 8 BRIGHT A_RandomBoneSpawn();
  77. SANS F 20 BRIGHT A_FaceTarget();
  78. Goto See;
  79. FastTravel:
  80. SANS F 0 BRIGHT A_SetRenderStyle(0.8, STYLE_Translucent);
  81. SANS F 5 BRIGHT A_FaceTarget();
  82. SANS F 0 BRIGHT A_SetRenderStyle(0.6, STYLE_Translucent);
  83. SANS F 5 BRIGHT A_FaceTarget();
  84. SANS F 0 BRIGHT A_SetRenderStyle(0.4, STYLE_Translucent);
  85. SANS F 8 BRIGHT A_FaceTarget();
  86. SANS F 0 BRIGHT A_SetRenderStyle(0.2, STYLE_Translucent);
  87. SANS F 8 BRIGHT A_FaceTarget();
  88. TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander;
  89. TNT1 A 0 A_FaceTarget();
  90. SANS E 8 BRIGHT A_SetRenderStyle(0.5, STYLE_Translucent);
  91. SANS E 20 BRIGHT A_SetRenderStyle(1.0, STYLE_Translucent);
  92. Goto See;
  93. GasterSpin:
  94. SANS F 5 A_FaceTarget();
  95. SANS F 10 A_GasterSpins();
  96. SANS F 10 A_FaceTarget();
  97. SANS F 10 A_Facetarget();
  98. SANS G 10 BRIGHT A_FaceTarget();
  99. SANS G 10 A_FaceTarget();
  100. SANS G 10 A_FaceTarget();
  101. Goto See;
  102. Pain:
  103. SANS E 5 A_SetRenderStyle(1.0, STYLE_Translucent);
  104. SANS E 5 A_Pain2();
  105. Goto See;
  106. Death:
  107. SANS H 30 S_Changemusic("SILENCE");
  108. SANS I 3 A_Pain;
  109. SANS PIPIP 3;
  110. SANS I 30;
  111. SANS JJJ 20 A_Pain2();
  112. SANS K 7 A_Scream;
  113. SANS LNM 7;
  114. TNT1 A 0 S_Changemusic("*");
  115. SANS O 7 A_Fall;
  116. SANS O -1;
  117. Stop;
  118. }
  119. }
  120.  
  121. class GasterBlaster : Actor
  122. {
  123. Default
  124. {
  125. +NOBLOCKMAP +NOGRAVITY +ZDOOMTRANS
  126. RenderStyle "Add";
  127. Alpha 1;
  128. damagetype "sans";
  129. }
  130. States
  131. {
  132. Spawn:
  133. GSTH A 2;
  134. GSTH A 6 A_GasterSound();
  135. GSTH AAA 2;
  136. GSTH BBBB 2 A_FaceTarget();
  137. GSTH B 6 A_FaceTarget();
  138. GSTH C 14 BRIGHT A_GasterAttack();
  139. GSTH B 8;
  140. GTSH A 8;
  141. TNT1 A -1;
  142. Stop;
  143. }
  144. }
  145.  
  146. Class BonePillarStatic : Actor
  147. {
  148. Default
  149. {
  150. +FLOORHUGGER;
  151. +DONTTHRUST;
  152. +RIPPER;
  153. Radius 15;
  154. Height 30;
  155. Damage 0;
  156. DamageType "sans";
  157. PROJECTILE;
  158. }
  159. States
  160. {
  161. Spawn:
  162. TNT1 A 0;
  163. BOAT Z 2;
  164. TNT1 A 2;
  165. BOAT Z 2;
  166. TNT1 A 2;
  167. BOAT Z 2;
  168. TNT1 A 2;
  169. BOAT Z 2;
  170. TNT1 A 2 SetDamage(1);
  171. HTFX ABCDE 1;
  172. BOAT ABCD 1 A_Explode(5,20,0,1,1);
  173. BOAT EEEEEEEEEEEEEEEEEEEEEE 2; //A_Explode(50,45,0,1,1)
  174. BOAT DC 1;
  175. BOAT BA 1;
  176. HTFX EDCBA 1;
  177. Stop;
  178. }
  179. }
  180.  
  181. Class BonePillarStatic2 : Actor
  182. {
  183. Default
  184. {
  185. -SOLID;
  186. +THRUACTORS;
  187. +FLOORHUGGER;
  188. +DONTTHRUST;
  189. Radius 1;
  190. Height 1;
  191. DamageType "sans";
  192. PROJECTILE;
  193. }
  194. States
  195. {
  196. Spawn:
  197. TNT1 A 0;
  198. TNT1 A 0 A_SpawnProjectile("BonePillarStatic",0,0,0,CMF_AIMDIRECTION);
  199. Stop;
  200. }
  201. }
  202.  
  203. Class BonePillarSpawner : Actor
  204. {
  205. Default
  206. {
  207. +NOINTERACTION;
  208. +DONTTHRUST;
  209. Radius 15;
  210. Height 55;
  211. DamageType "sans";
  212. }
  213. States
  214. {
  215. Spawn:
  216. TNT1 A 0;
  217. TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_SpawnItemEx("BonePillarStatic2",Random(-777,777),Random(-777,777));
  218. Stop;
  219. }
  220. }
  221.  
  222. Class BonePillarMobile : BonePillarStatic
  223. {
  224. Default
  225. {
  226. MaxStepHeight 10;
  227. ProjectilePassHeight 10;
  228. +RIPPER;
  229. +NODAMAGETHRUST
  230. Damage 1;
  231. Damagetype "sans";
  232. }
  233. States
  234. {
  235. Spawn:
  236. TNT1 A 0;
  237. HTFX ABCDE 1;
  238. BOAT ABCD 1;
  239. BOAT EEEE 2 ;
  240. TNT1 A 0 A_ChangeVelocity(20,0,0,CVF_REPLACE|CVF_RELATIVE);
  241. Move:
  242. TNT1 A 0;
  243. BOAT E 2 A_RadiusThrust(100,10,0);
  244. TNT1 A 0 A_SpawnItemEx("DustEffect");
  245. Loop;
  246. Death:
  247. BOAT DC 1;
  248. BOAT BA 1;
  249. HTFX EDCBA 1;
  250. Stop;
  251. }
  252. }
  253.  
  254. Class DustEffect : Actor
  255. {
  256. Default
  257. {
  258. +NOINTERACTION;
  259. +NOGRAVITY;
  260. }
  261. States
  262. {
  263. Spawn:
  264. TNT1 A 0;
  265. HTFX EDCBA 2;
  266. Stop;
  267. }
  268. }
  269. Class GasterSpinner : Actor
  270. {
  271. int time;
  272.  
  273. Default
  274. {
  275. +NOINTERACTION;
  276. +DONTTHRUST;
  277. Radius 1;
  278. Height 40;
  279. DamageType "sans";
  280. }
  281. States
  282. {
  283. Spawn:
  284. TNT1 A 1;
  285. TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_GasterSpinSpawn();
  286. TNT1 A 100;
  287. Stop;
  288. }
  289.  
  290. }
  291.  
  292. extend class GasterSpinner
  293. {
  294. void A_GasterSpinSpawn()
  295. {
  296. let gast = spawn("gasterblaster", pos + ((cos(angle - 30 + time), sin(angle - 30 + time)) * 250, 19)); gast.target = self;
  297. time += 9;
  298. }
  299. }
  300.  
  301. extend class Sans
  302. {
  303. void A_GasterSpawn()
  304. {
  305. A_FaceTarget();
  306.  
  307. let gast = spawn("gasterblaster", pos + ((cos(angle - 40), sin(angle - 40)) * -40, 50)); gast.target = target;
  308. }
  309. void A_BoneWallSpawn()
  310. {
  311. A_FaceTarget();
  312.  
  313. A_SpawnProjectile("BonePillarMobile",0,-105,0,CMF_AIMDIRECTION);
  314. A_SpawnProjectile("BonePillarMobile",0,-90,0,CMF_AIMDIRECTION);
  315. A_SpawnProjectile("BonePillarMobile",0,-75,0,CMF_AIMDIRECTION);
  316. A_SpawnProjectile("BonePillarMobile",0,-60,0,CMF_AIMDIRECTION);
  317. A_SpawnProjectile("BonePillarMobile",0,-45,0,CMF_AIMDIRECTION);
  318. A_SpawnProjectile("BonePillarMobile",0,-30,0,CMF_AIMDIRECTION);
  319. A_SpawnProjectile("BonePillarMobile",0,-15,0,CMF_AIMDIRECTION);
  320. A_SpawnProjectile("BonePillarMobile",0,0,0,CMF_AIMDIRECTION);
  321. A_SpawnProjectile("BonePillarMobile",0,15,0,CMF_AIMDIRECTION);
  322. A_SpawnProjectile("BonePillarMobile",0,30,0,CMF_AIMDIRECTION);
  323. A_SpawnProjectile("BonePillarMobile",0,45,0,CMF_AIMDIRECTION);
  324. A_SpawnProjectile("BonePillarMobile",0,60,0,CMF_AIMDIRECTION);
  325. A_SpawnProjectile("BonePillarMobile",0,75,0,CMF_AIMDIRECTION);
  326. A_SpawnProjectile("BonePillarMobile",0,90,0,CMF_AIMDIRECTION);
  327. A_SpawnProjectile("BonePillarMobile",0,105,0,CMF_AIMDIRECTION);
  328. }
  329. void A_Pain2()
  330. {
  331. A_StartSound("SANSTALK");
  332. }
  333. void A_RandomBoneSpawn()
  334. {
  335. A_FaceTarget();
  336.  
  337. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  338. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  339. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  340. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  341. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  342. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  343. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  344. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  345. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  346. Spawn("BonePillarSpawner", target.pos, ALLOW_REPLACE);
  347. }
  348. void A_GasterSpins()
  349. {
  350. A_FaceTarget();
  351.  
  352. let spin = Spawn("GasterSpinner", target.pos, ALLOW_REPLACE); spin.target = target;
  353.  
  354. }
  355. void A_TiredReset()
  356. {
  357. TiredLevel = 0;
  358. }
  359. void A_TiredCheck()
  360. {
  361. TiredLevel += 1;
  362.  
  363. if (TiredLevel == 50)
  364. {
  365. SetStateLabel("Sleep");
  366.  
  367. TiredLevel *= 0;
  368. }
  369. }
  370. }
  371.  
  372. extend class GasterBlaster
  373. {
  374. int A_GasterDamage()
  375. {
  376. int DMG = 200 - (vec3to(target).length()/8);
  377.  
  378. if (DMG < 10)
  379. {
  380. DMG = 10;
  381. }
  382.  
  383. Return DMG;
  384. }
  385.  
  386. void A_GasterSound()
  387. {
  388. A_FaceTarget();
  389.  
  390. A_StartSound("TELEKI");
  391. }
  392.  
  393. void A_GasterAttack()
  394. {
  395. A_CustomRailgun(A_GasterDamage() , 0 , color(218, 214, 255) , color(255, 255, 255) , RGF_FULLBRIGHT | rgf_silent , 1 , 1 , "BulletPuff" , 0 , 0 , 0 , 0 , 1.0 , 1.0 , "None" , 0 , 270 , 0 , 3);
  396.  
  397. A_StartSound("GASTER2");
  398. }
  399. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement