Paste #113915: Unnamed Denizen Script Paste

Date: 2023/08/14 15:04:32 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


int_display:
    type: procedure
    debug: false
    definitions: int
    script:

        - determine <[int].format_number> if:<[int].length.is_less_than_or_equal_to[4]>
        - choose <[int].length>:
            - case 4 5 6:
                - determine <[int].format_number> if:<[int].length.equals[4]>
                - define prefix K
                - define d_int <[int].substring[1,2]> if:<[int].length.equals[5]>
                - define d_int <[int].substring[1,3]> if:<[int].length.equals[6]>
            - case 7 8 9:
                - define prefix M
                - define d_int <[int].char_at[1]>
                - define d_int <[int].substring[1,2]> if:<[int].length.equals[8]>
                - define d_int <[int].substring[1,3]> if:<[int].length.equals[9]>
                - if <[int]> < 10000000:
                    - define d_int <[d_int]>.<[int].substring[2,3]>
                - else if <[int]> > 1000000 && <[int]> < 100000000:
                    - define d_int <[d_int]>.<[int].char_at[3]> if:<[int].char_at[3].equals[0].not>
            - case 10 11 12:
                - define prefix B
                - define d_int <[int].char_at[1]>
                - define d_int <[int].substring[1,2]> if:<[int].length.equals[11]>
                - define d_int <[int].substring[1,3]> if:<[int].length.equals[12]>
                - if <[int]> < 1000000000:
                    - define d_int <[d_int]>.<[int].substring[2,3]>
                - else if <[int]> > 1000000000 && <[int]> < 100000000000:
                    - define d_int <[d_int]>.<[int].char_at[3]> if:<[int].char_at[3].equals[0].not>
            - default:
                - determine 999B+
        - determine <[d_int]><[prefix]>