yuhsing

Untitled

Aug 7th, 2013
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.55 KB | None | 0 0
  1.  
  2.  
  3. prontera,155,175,5 script Sample 757,{
  4. if( getgmlevel() < 90 ) end;
  5.  
  6. switch( select( "Set Mob Sprite",( !$@sprite || !$@speed )?"":"Start" ) ){
  7. Case 1:
  8. mes "Sprite List :";
  9. do{
  10. input $@sprite[.@size];
  11. .@name$,getmonsterinfo( $@sprite[.@size],MOB_NAME );
  12. if( .@name$ != "null" ){
  13. mes " ^777777> "+.@name$+"^000000";
  14. set .@size,.@size + 1;
  15. }
  16. }while( select( "Add Another Sprite","Continue" ) == 1 );
  17. set $@sprite_size,.@size;
  18. mes "Speed : ";
  19. input $@speed,100,500;
  20.  
  21. Case 2:
  22. mes "NPC will start walk now.";
  23. close2;
  24. for( .@y,0; .@y < .y_align_size; .@y++ )
  25. for( .@x,0; .@x < .x_align_size; .@x++ ){
  26. hideoffnpc "mob#"+.@count;
  27. movenpc "mob#"+.@count,.x_align[.@x],.y_align[.@y];
  28. specialeffect 344,AREA,"mob#"+.@count;
  29. set .@count,.@count + 1;
  30. }
  31. donpcevent "::OnWalk";
  32. default: break;
  33. }
  34. end;
  35.  
  36. OnInit:
  37. // how many step they walk everytime
  38. set $@walk_step,2;
  39. // hide npc when reach this y-coordinate
  40. set $@end_y_coordinate,142;
  41.  
  42. // npc alignment coordinate ( depend on duplicated mob npc )
  43. setarray .x_align,151,153,155,157,159,161;
  44. setarray .y_align,165,167,169,171,173;
  45. set .x_align_size,getarraysize( .x_align );
  46. set .y_align_size,getarraysize( .y_align );
  47.  
  48. set .npc_map$,strnpcinfo(4);
  49. // flower align ...
  50. for( set .@i,170; .@i > 140; set .@i,.@i + 1 ){
  51. monster .npc_map$,148,.@i,"WALL",rand( 1934,1936 ),1,"";
  52. monster .npc_map$,163,.@i,"WALL",rand( 1934,1936 ),1,"";
  53. }
  54. end;
  55. }
  56.  
  57.  
  58.  
  59. prontera,1,1,4 script mob 111,{
  60. end;
  61.  
  62. OnWalk:
  63. set .@npc_name$,strnpcinfo(0);
  64. npcspeed $@speed;
  65. while( .@sprite < $@sprite_size && $@sprite[.@sprite] ){
  66. if( !setnpcdisplay( .@npc_name$,$@sprite[.@sprite] ) ){
  67. hideoffnpc .@npc_name$;
  68. while( 1 ){
  69. getmapxy( .@map$,.@x,.@y,1 );
  70.  
  71. if( .@y > $@end_y_coordinate ){
  72. npcwalkto .@x,( .@y - $@walk_step );
  73. }else if( .@y <= $@end_y_coordinate ){
  74. npcstop;
  75. break;
  76. }
  77. sleep 1750;
  78. }
  79. specialeffect 344;
  80. }
  81.  
  82. set .@sprite.@sprite + 1;
  83. if( .@sprite < $@sprite_size ){
  84. movenpc .@npc_name$,.@x,169;
  85. specialeffect 344,AREA,.@npc_name$;
  86. }
  87. }
  88. movenpc .@npc_name$,1,1;
  89. hideonnpc .@npc_name$;
  90. setnpcdisplay( .@npc_name$,111 );
  91. end;
  92.  
  93. }
  94.  
  95. // duplicate more if you need ..
  96. prontera,1,1,4 duplicate(mob) mob#0 111
  97. prontera,1,1,4 duplicate(mob) mob#1 111
  98. prontera,1,1,4 duplicate(mob) mob#2 111
  99. prontera,1,1,4 duplicate(mob) mob#3 111
  100. prontera,1,1,4 duplicate(mob) mob#4 111
  101. prontera,1,1,4 duplicate(mob) mob#5 111
  102. prontera,1,1,4 duplicate(mob) mob#6 111
  103. prontera,1,1,4 duplicate(mob) mob#7 111
  104. prontera,1,1,4 duplicate(mob) mob#8 111
  105. prontera,1,1,4 duplicate(mob) mob#9 111
  106. prontera,1,1,4 duplicate(mob) mob#10 111
  107. prontera,1,1,4 duplicate(mob) mob#11 111
  108. prontera,1,1,4 duplicate(mob) mob#12 111
  109. prontera,1,1,4 duplicate(mob) mob#13 111
  110. prontera,1,1,4 duplicate(mob) mob#14 111
  111. prontera,1,1,4 duplicate(mob) mob#15 111
  112. prontera,1,1,4 duplicate(mob) mob#16 111
  113. prontera,1,1,4 duplicate(mob) mob#17 111
  114. prontera,1,1,4 duplicate(mob) mob#18 111
  115. prontera,1,1,4 duplicate(mob) mob#19 111
  116. prontera,1,1,4 duplicate(mob) mob#20 111
  117. prontera,1,1,4 duplicate(mob) mob#21 111
  118. prontera,1,1,4 duplicate(mob) mob#22 111
  119. prontera,1,1,4 duplicate(mob) mob#23 111
  120. prontera,1,1,4 duplicate(mob) mob#24 111
  121. prontera,1,1,4 duplicate(mob) mob#25 111
  122. prontera,1,1,4 duplicate(mob) mob#26 111
  123. prontera,1,1,4 duplicate(mob) mob#27 111
  124. prontera,1,1,4 duplicate(mob) mob#28 111
  125. prontera,1,1,4 duplicate(mob) mob#29 111
  126. prontera,1,1,4 duplicate(mob) mob#30 111
Advertisement
Add Comment
Please, Sign In to add comment