@@ -63,6 +63,48 @@ function passed_requirements () {
6363 }
6464 return true
6565}
66+ function number_to_si_divider ( num : number ) {
67+ if ( num > 1e+24 ) {
68+ return 1e+24
69+ } else if ( num > 1e+21 ) {
70+ return 1e+21
71+ } else if ( num > 1000000000000000000 ) {
72+ return 1000000000000000000
73+ } else if ( num > 1000000000000000 ) {
74+ return 1000000000000000
75+ } else if ( num > 1000000000000 ) {
76+ return 1000000000000
77+ } else if ( num > 1000000000 ) {
78+ return 1000000000
79+ } else if ( num > 1000000 ) {
80+ return 1000000
81+ } else if ( num > 1000 ) {
82+ return 1000
83+ } else {
84+ return 1
85+ }
86+ }
87+ function number_to_si_prefix ( num : number ) {
88+ if ( num > 1e+24 ) {
89+ return "Y"
90+ } else if ( num > 1e+21 ) {
91+ return "Z"
92+ } else if ( num > 1000000000000000000 ) {
93+ return "E"
94+ } else if ( num > 1000000000000000 ) {
95+ return "P"
96+ } else if ( num > 1000000000000 ) {
97+ return "T"
98+ } else if ( num > 1000000000 ) {
99+ return "G"
100+ } else if ( num > 1000000 ) {
101+ return "M"
102+ } else if ( num > 1000 ) {
103+ return "k"
104+ } else {
105+ return ""
106+ }
107+ }
66108function make_buttons ( ) {
67109 make_buy_autoclicker ( )
68110 make_buy_computer ( )
@@ -307,7 +349,7 @@ spriteutils.createRenderable(0, function (screen2) {
307349 if ( controller . B . isPressed ( ) ) {
308350 images . print ( screen2 , "T/S: " + ticks_per_second + "/" + max_ticks_per_second , sprite_upgrades_button . left , sprite_upgrades_button . top - 15 , 1 )
309351 } else {
310- images . print ( screen2 , "H/S: " + average_hash_per_sec , sprite_upgrades_button . left , sprite_upgrades_button . top - 15 , 1 )
352+ images . print ( screen2 , pretty_hashes_per_sec ( average_hash_per_sec ) , sprite_upgrades_button . left , sprite_upgrades_button . top - 15 , 1 )
311353 }
312354} )
313355spriteutils . createRenderable ( 0 , function ( screen2 ) {
@@ -479,6 +521,9 @@ function make_main_computer () {
479521blockMenu . onMenuOptionSelected ( function ( option , index ) {
480522 selected = true
481523} )
524+ function pretty_hashes_per_sec ( hashes_per_sec : number ) {
525+ return "" + number_to_si_prefix ( hashes_per_sec ) + "H/S: " + spriteutils . roundWithPrecision ( hashes_per_sec / number_to_si_divider ( hashes_per_sec ) , 2 )
526+ }
482527let local_upgrade_got : blockObject . BlockObject = null
483528let local_upgrades_shown = 0
484529let local_available_upgrades : blockObject . BlockObject [ ] = [ ]
@@ -516,7 +561,7 @@ let average_hash_per_sec = 0
516561let ticks_per_second = 0
517562let max_ticks_per_second = 0
518563let debug = false
519- debug = false
564+ debug = true
520565max_ticks_per_second = 20
521566let raw_tick_count = 0
522567ticks_per_second = 0
0 commit comments