Advertisement
sumguytwitches

Dynamic Display

Jul 28th, 2023 (edited)
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1.  
  2. set sgfirst to 0.
  3. set sgp to 0.
  4. set sggo to true.
  5. set sgf to 8.
  6. set sgpr to 4.
  7. set sgDisplayItems to lex().
  8.  
  9. function sgd {
  10. parameter l. parameter d.
  11. If l:length > sgpr set sgpr to l:length.
  12. set dstring to d:tostring().
  13. if d:typename = "Scalar" set dstring to round(d,2):tostring().
  14.  
  15. print (l:padleft(sgpr) + ": " + dstring):padright(terminal:width) at (0, sgp).
  16. set sgp to sgp + 1.
  17. }.
  18.  
  19. set sgDisplayItems["periapsis"] to { return periapsis. }.
  20. set sgDisplayItems["apoapsis"] to { return apoapsis. }.
  21. set sgDisplayItems["dv"] to { return Round(800 * 9.81 * ln(ship:mass / (ship:mass - (ship:liquidfuel * 0.005))), 5). }.
  22.  
  23. On round(kuniverse:realtime * sgf) {
  24. set sgp to sgfirst.
  25.  
  26. for key in sgDisplayItems:keys {
  27.  
  28. sgd(key,sgDisplayItems[key]()).
  29. }
  30.  
  31. Print "":padright(terminal:width) at (0,sgp).
  32. return sggo.
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement