Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.52 KB | None | 0 0
  1. DEF D MAP,DIST,X,Y,W,H
  2. FILL DIST,99999
  3. DIM L1[0],L2[0]
  4. VAR D=0
  5. PUSH L2,X
  6. PUSH L2,Y
  7. DIST[X,Y]=D
  8.  
  9. WHILE LEN(L2)
  10. WHILE LEN(L2) 'yes twice
  11. Y=POP(L2) 'note that Y is first here
  12. X=POP(L2)
  13. C MAP,DIST,L1,X+1,Y,W,H,D
  14. C MAP,DIST,L1,X-1,Y,W,H,D
  15. C MAP,DIST,L1,X,Y+1,W,H,D
  16. C MAP,DIST,L1,X,Y-1,W,H,D
  17. WEND
  18. SWAP L1,L2
  19. INC D
  20. WEND
  21. END
  22.  
  23. DEF C MAP,DIST,LIST,X,Y,W,H,D
  24. IF X>=0&&Y>=0&&X<W&&Y<H&&MAP[X,Y]==0&&DIST[X,Y]==99999 THEN
  25. PUSH LIST,X
  26. PUSH LIST,Y
  27. DIST[X,Y]=D+1
  28. ENDIF
  29. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement