All pastes #229217 Raw Edit

bennett

public text v1 · immutable
#229217 ·published 2006-10-30 15:07 UTC
rendered paste body
View.Set ("graphics:max,max")
var rollcount : array 1 .. 8 of int := init (0, 0, 0, 0, 0, 0, 0, 0)
var die : int
var mx, my, mb : int
var spot : int := 0
var font : int := Font.New ("sans serif:18:bold")


var bet : array 1 .. 6 of int
proc getbet (var bet : array 1 .. 6 of int)
    for i : 1 .. upper (bet)
        locate (1 + i, 37)
        get bet (i)
    end for
end getbet


var amount : array 1 .. 6 of int := init (500, 500, 500, 500, 500, 500)
proc getamount (var amount : array 1 .. 6 of int)
    for i : 1 .. upper (amount)
        get amount (i)
    end for
end getamount

var pick : array 1 .. 6 of int
proc getpick (var pick : array 1 .. 6 of int)
    for i : 1 .. upper (pick)
        locate (1 + i, 59)
        get pick (i)
    end for
end getpick


proc loadyoshis (var yoshis : array 1 .. 8 of int)
    for i : 1 .. upper (yoshis)
        yoshis (i) := Pic.FileNew ("yoshi" + intstr (i) + ".jpg")
    end for
end loadyoshis

var names : array 1 .. 6 of string
proc getnames (var names : array 1 .. 6 of string)
    for i : 1 .. upper (names)
        get names (i)
    end for
end getnames

var spend : array 1 .. 6 of int
proc getspend (var spend : array 1 .. 6 of int)
    for i : 1 .. upper (spend)
        get spend (i)
    end for
end getspend

process playmusic2
    Music.PlayFile ("bet.mp3")
end playmusic2

process playmusic3
    Music.PlayFile ("win.mp3")
end playmusic3

process playmusic
    Music.PlayFile ("begining.wav")
end playmusic


loop

    fork playmusic2

    var yoshis : array 1 .. 8 of int

  
    
    put "name", "           ", "cash amount", "           ", "bet amount", "           ", "yoshi beting on"
    getnames (names)
    getbet (bet)
    getpick (pick)

    randomize

    Music.PlayFileStop
    loadyoshis (yoshis)
    fork playmusic
    drawfillbox (0, 0, maxx, maxy, 10)
    drawline (1000, 0, 1000, maxy, brown)


    loop
        mousewhere (mx, my, mb)
        if mb = 1 then
            spot := my div 80
        end if
        if mb = 1 and spot <= 8 and my < 700 then
            rollcount (spot) += 1
        end if
        delay (3)
        randint (die, 1, 8)
        rollcount (die) := rollcount (die) + 1
        Pic.Draw (yoshis (die), rollcount (die), die * 80, picCopy)
        drawfillbox (0, die * 80, rollcount (die), die * 80 + 50, 10)
        Font.Draw (intstr (die), 10, die * 80, font, black)
        exit when rollcount (die) >= 970
    end loop
    Music.PlayFileStop
    Font.Draw ("yoshi " + intstr (die) + " is the winner!", 400, 350, font, black)
    delay (600)
    cls
    fork playmusic3
    for i : 1 .. 3
        amount (i) := amount (i) - bet (i)
        if pick (i) = die then
            amount (i) := amount (i) + bet (i) * 2
        end if
    end for

    put "name", "           ", "cash amount", "           ", "bet amount", "           ", "yoshi beting on"
    for i : 1 .. 3
        locate (1 + i, 1)
        put names (i)
        locate (1 + i, 16)
        put amount (i)
        locate (1 + i, 37)
        get bet (i)
        locate (1 + i, 59)
        get pick (i)
    end for
end loop