Advertisement
ReverendV92

Reporting Mark/Running Number E2

Nov 8th, 2019
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.38 KB | None | 0 0
  1. @name _v92_/reporting_mark
  2. @inputs [ReportingMark RunningNumber]:string
  3. @persist [Str_DefaultReportingMark Str_DefaultRunningNumber]:string
  4.  
  5. if( first( ) | dupefinished( ) ){
  6.  
  7. B_AutoParent = 0 # Autoparent to whatever you shoot
  8. Str_DefaultReportingMark = "IDKX" # Default reporting mark to use if "ReportingMark" isn't wired
  9. Str_DefaultRunningNumber = "1992" # Default running number to use if "RunningNumber" isn't wired
  10.  
  11. local E = entity( )
  12. E:propShadow( 0 ) # Make the E2 not cast shadows
  13. E:setMaterial( "magtrains/invisible" ) # Make the E2 invisible
  14.  
  15. local F_Scale = 0.9 # Scale
  16. local Vec_Color = vec( 255 ) # Colour
  17. local Str_Material = "models/proppertextures/acrylic" # Material
  18. local F_Offset_Y = 0 # Offset in units
  19. local F_Offset_Z = 0 # Offset in units
  20. local B_Vertical = 0 # Make text vertical
  21.  
  22. if( B_Vertical ){ # If vertical mode is enabled...
  23. holoCreate( 0 , E:toWorld( F_Scale * vec( -6 , F_Offset_Y , ( F_Offset_Z / F_Scale ) ) ) , F_Scale * vec( 1 ) , E:angles( ) , Vec_Color , "models/magtrains/reportingmark.mdl" )
  24. holoCreate( 1 , E:toWorld( F_Scale * vec( 6 , F_Offset_Y , ( F_Offset_Z / F_Scale ) ) ) , F_Scale * vec( 1 ) , E:angles( ) , Vec_Color , "models/magtrains/runningnumber.mdl" )
  25. } else { # Else use horizontal mode...
  26. holoCreate( 0 , E:toWorld( F_Scale * vec( 0 , ( -30 + F_Offset_Y ) , ( F_Offset_Z / F_Scale ) ) ) , F_Scale * vec( 1 ) , E:angles( ) , Vec_Color , "models/magtrains/reportingmark.mdl" )
  27. holoCreate( 1 , E:toWorld( F_Scale * vec( 0 , ( 42 + F_Offset_Y ) , ( F_Offset_Z / F_Scale ) ) ) , F_Scale * vec( 1 ) , E:angles( ) , Vec_Color , "models/magtrains/runningnumber.mdl" )
  28. }
  29.  
  30. ####################
  31. # You probably shouldn't need to edit anything past this break
  32. # Probably.
  33. ####################
  34.  
  35. holoParent( 0 , E ) # Parent the reporting mark model to the E2
  36. holoParent( 1 , E ) # Parent the running number model to the E2
  37. holoMaterial( 0 , Str_Material )
  38. holoMaterial( 1 , Str_Material )
  39.  
  40. if( B_AutoParent ){ # If autoparent is enabled, parent this thing to what you hit
  41. if( E:isWeldedTo( ):isValid( ) ){
  42. E:parentTo( E:isWeldedTo( ) )
  43. #ifdef entity:constraintBreak( entity )
  44. E:constraintBreak( E:isWeldedTo( ) )
  45. #endif
  46. }
  47. }
  48. }
  49.  
  50. ####################
  51. # Reporting Mark
  52. ####################
  53.  
  54. if ( ->ReportingMark ){
  55.  
  56. Repmark = ReportingMark:lower( )
  57.  
  58. }else{
  59.  
  60. Repmark = Str_DefaultReportingMark:lower( )
  61.  
  62. }
  63.  
  64. local ReportingMarkNumberLength = Repmark:length( )
  65.  
  66. Repmark = " ":repeat( 4 - ReportingMarkNumberLength ) + Repmark
  67.  
  68. for( N = 1 , 4 ) {
  69.  
  70. local I = Repmark:index( N )
  71.  
  72. if( I == "" | I == " " ){
  73.  
  74. holoBodygroup( 0 , N , 26 )
  75.  
  76. } else {
  77.  
  78. holoBodygroup( 0 , N , toByte( I ) - 97 )
  79.  
  80. }
  81.  
  82. }
  83.  
  84. ####################
  85. # Running Number
  86. ####################
  87.  
  88. if ( ->RunningNumber ) {
  89.  
  90. Number = RunningNumber:lower( )
  91.  
  92. }else{
  93.  
  94. Number = Str_DefaultRunningNumber:lower( )
  95.  
  96. }
  97.  
  98. local RunningNumberLength = Number:length( )
  99.  
  100. Number = Number + " ":repeat( RunningNumberLength )
  101.  
  102. for ( N = 1 , 6 ) {
  103.  
  104. local I = Number:index( N )
  105.  
  106. if ( I == "" | I == " " ) {
  107.  
  108. holoBodygroup( 1 , N , 10 )
  109.  
  110. }else{
  111.  
  112. holoBodygroup( 1 , N , I:toNumber( ) )
  113.  
  114. }
  115.  
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement