Advertisement
Kuroneko-yousenpai

AS3_Functions

Sep 17th, 2021 (edited)
3,992
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. trait method Qname(PrivateNamespace(""),"FunctionName") //private function
  2. trait method Qname(PackageNamespace(""),"FunctionName") //public function
  3. trait method QName(PackageInternalNs(""),"FunctionName") //static function (+флаг FINAL)
  4. trait method Qname(ProtectedNamespace(""),"FunctionName") //override protected
  5. trait getter QName(PackageNamespace(""),"FunctionName") //public function get
  6.  
  7.  
  8. trait method Qname(PackageNamespace(""),"FunctionName")
  9. //flag OVERRIDE Для "override protected"
  10. //flag FINAL Для "public static"
  11. flag METADATA
  12. metadata"__go_to_definition_help"
  13. item "pos" "404n"
  14. end ; metadata
  15. dispid 0
  16. method
  17. name "ru.pragmatix.wormix.weapons.ammo.type.blocker:AbstractBlocker/FunctionName"
  18. //flag HAS_PARAM_NAMES
  19. //flag NEED_REST ??? //Возможно это отвечает за параметры "... rest", т.е. прочие возможные параметры
  20. //flag HAS_OPTIONAL Если параметры опциональны
  21. //flag NEED_ACTIVATION Если параметры требуют активации (узнать, что это?)
  22. param Qname(PackageNamespace("ru.pragmatix.wormix.objects.unit"),"Unit")
  23. paramname "unit"
  24. optional -1 Нужно для флага "HAS_OPTIONAL" может принимать значения: 0, -1, 1*/
  25. returns Qname(PackageNamespace(""),"void")
  26. //returns QName(PackageNamespace(""),"int")
  27. //returns QName(PackageNamespace(""),"uint")
  28. //returns QName(PackageNamespace(""),"Boolean")
  29. //returns QName(PackageNamespace(""),"Array")
  30. //returns QName(PackageNamespace("ru.pragmatix.wormix.objects.unit"),"Unit")
  31.  
  32. body
  33. maxstack 1
  34. localcount 1
  35. initscopedepth 1
  36. maxscopedepth 1
  37.  
  38. code
  39. debugfile "D:\\projects\\wormix\\client\\src;ru\\pragmatix\\wormix\\weapons\\ammo\\type\\blocker;AbstractBlocker.as"
  40. debugline 34
  41. getlocal_0
  42. pushscope
  43. debug 1 "unit" 0 34
  44. //debug 1 "localname" 1 35
  45. returnvoid
  46. end ; code
  47. end ; body
  48. end ; method
  49. end ; trait
  50.  
  51. //Вызов функции (в своём же скарипте)
  52.  
  53. findpropstrict Qname(StaticProtectedNs(""),"FunctionName")
  54. callpropvoid Qname(StaticProtectedNs(""),"FunctionName") 0
  55.  
  56. //Вызов функции в чужом скрипте
  57.  
  58. findpropstrict QName(PackageNamespace("ru.pragmatix.flox.gui.controls"),"MessageBox")
  59. getproperty QName(PackageNamespace("ru.pragmatix.flox.gui.controls"),"MessageBox")
  60. callproperty QName(PackageNamespace(""),"showMsg"), 0
  61. pop
  62.  
  63.  
  64.  
  65.  
  66. //public var Switcher:Boolean = false;
  67. trait slot QName(PackageNamespace(""),"Switcher") //У паблик переменных путь к скрипту указывать не нужно!
  68. flag METADATA
  69. metadata"__go_to_definition_help"
  70. item "pos" "666"
  71. end ; metadata
  72. slotid 0
  73. type QName(PackageNamespace(""),"Boolean")
  74. value False()
  75. end ; trait
  76.  
  77.  
  78.  
  79. // Need arguments[0..argc]
  80. NEED_ARGUMENTS = 0x01
  81.  
  82. //Need activation object
  83. NEED_ACTIVATION = 0x02
  84.  
  85. // Need arguments[param_count+1..argc]
  86. NEED_REST = 0x04
  87.  
  88. // Has optional parameters
  89. HAS_OPTIONAL = 0x08
  90.  
  91. // Allow extra args, but don't capture them
  92. IGNORE_REST = 0x10
  93.  
  94. // Mthod is native
  95. NATIVE = 0x20
  96.  
  97. // Method sets default namespace
  98. SETS_DXNS = 0x40
  99.  
  100. // Method has table for parameter names
  101. HAS_PARAM_NAMES = 0x80
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement