home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / Raytracing / Raytracer / WZD-REF4.LHA / ref / install / skripte.lha / kpmvco.skr < prev    next >
Encoding:
Reflections/Monzoom script  |  1996-07-26  |  1.2 KB  |  76 lines

  1. REFSKRIPT
  2. ;! Aufruf kp_move_copy.rexx <kp> <ncopys> <dx> <dy> <dz> <name>*/
  3.  
  4. GET_N_PARAMS
  5. GET_RESULT np
  6. IF_EQUAL_GOTO np 6 w1
  7. RETURN 0
  8. >w1:
  9. GET_PARAM_NR 1
  10. GET_RESULT kp
  11. GET_PARAM_NR 2
  12. GET_RESULT ncopys
  13. GET_PARAM_NR 3
  14. GET_RESULT dx
  15. GET_PARAM_NR 4
  16. GET_RESULT dy
  17. GET_PARAM_NR 5
  18. GET_RESULT dz 
  19. GET_PARAM_NR 6
  20. GET_RESULT name
  21.  
  22. IF_LESS_GOTO ncopys 2 w2
  23. GOTO w3
  24. >w2:
  25. RETURN 0
  26. >w3:
  27. ; schauen, ob es kp all ist, dann müssen wird zuerst
  28. ; einen neuen Koerper schaffen
  29. IF_STR_NOT_EQUAL_GOTO kp ALL w2b
  30. CALL neukpnam.skr ALL
  31. GET_RESULT kp1
  32. KP_ADDNEU kp kp1
  33. ADD_STR kp1
  34. GET_RESULT kp
  35. >w2b:
  36. ADD_STR kp
  37. GET_RESULT old
  38. GET_NOBJEKTE
  39. GET_RESULT nobj
  40.  
  41. SET_VAR i 2
  42. >do_loop:
  43. ;DO i=2 to ncopys
  44.    CALL neukpnam.skr tmp
  45.    GET_RESULT new1
  46.    ADD_STR1 new1 i
  47.    GET_RESULT new
  48.    KP_DOPPELN old new
  49.    KP_BEWEGE new dx dy dz
  50.    IF_EQUAL_GOTO i 2 w4
  51.    KP_LOESCHEN old
  52. >w4:
  53.    ADD_STR new
  54.    GET_RESULT old
  55.    ADD i 1
  56.    GET_RESULT i
  57.    IF_GREATER_GOTO i ncopys fert
  58.    GOTO do_loop
  59. >fert:
  60. KP_EXIST new
  61. GET_RESULT res
  62. IF_STR_EQUAL_GOTO res NEIN w5
  63. KP_LOESCHEN new
  64. >w5:
  65. GET_NOBJEKTE
  66. GET_RESULT nobj1
  67. SUB nobj1 1
  68. GET_RESULT nobj1
  69. KP_NEU name
  70. KP_OBJ_VONBIS nobj nobj1
  71. KP_FERTIG
  72.  
  73. KP_ADD name kp
  74.  
  75. RETURN 1
  76.