Español
Fuente/ Codesnippets

Müllspiel Rgh - 2

 

KompilierenMarcaSeparación
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
RGH-Müllspiel
windowtitle DAS MÜLLSPIEL
windowstyle 10
window 92,10-450,424
declare mx%,my%       Mausposition
declare fx%,fy%       Figurposition
declare px%,py%       neue Müllposition
declare dx%,dy%       Abstände
declare i%,j%         Zählvariablen
declare anz%,vorg%    Anzahl gesammelt/Vorgabe
declare ende%,ok%     Endeschalter, Zug-Ok-Schalter
declare ton%          Sound-Flag
declare scan%         Tastencode
declare tflag%        transparentes Icon?
declare f$,figur$
dim$ 12

PROC SPIELFELD

    case ton%:playsound toccata.wav,1
    list$  1=SSSSSSSSSSSSSS
    list$  2=SBBBBBBBBBBBBS
    list$  3=SBB   BB  GBBS
    list$  4=SBB M BB  MBBS
    list$  5=SBSS  BB    BS
    list$  6=SBB BBBBSSSSBS
    list$  7=SB     S    BS
    list$  8=SB S   S S  BS
    list$  9=SB SBM S BBBBS
    list$ 10=SB BB  S   EBS
    list$ 11=SBBBBBBBBBBBBS
    list$ 12=SSSSSSSSSSSSSS
    i%=12
    j%=14
    cls
    usecursor 2
    vorg%=0
    anz% =0

    while i%

        while j%

            f$=@mid$(@list$(i%),j%,1)
            tflag% = 0

            if @instr(f$,B)

                figur$=BAUM

            elseif @instr(f$, )

                figur$=WEG

            elseif @instr(f$,S)

                figur$=STEIN

            elseif @instr(f$,E)

                figur$=EIMER
                tflag% = 1

            elseif @instr(f$,M)

                figur$=MUELL
                tflag% = 1
                inc vorg%

            elseif @instr(f$,G)

                figur$=GESICHT
                tflag% = 1
                fx%=j%
                fy%=i%

            endif

            dec j%
            case tflag%:drawicon WEG,(j% * 32),((i% - 1) * 32)
            drawicon figur$,(j% * 32),((i% - 1) * 32)

        wend

        j%=14
        dec i%

    wend

    useicon GESICHT
    usecursor 4

ENDPROC

PROC TON

    ton% = 1 - ton%

    if ton%

        checkmenu 190,1

    else

        checkmenu 190,0

    endif

ENDPROC

PROC SPIEL

    ok% = 1
    dx% = mx% - fx%
    dy% = my% - fy%
    px% = dx% + mx%
    py% = dy% + my%
    case @abs(dx%) = @abs(dy%):ok% = 0
    case (@abs(dx%) + @abs(dy%)) > 1:ok% = 0

    ifnot ok%

        case ton%:beep
        messagebox Da gehts nicht lang!,FEHLER!,16
        return

    endif

    f$=@mid$(@list$(my%),mx%,1)
    case @instr(f$,BE):ok% = 0

    if @instr(f$,S)

        case @instr(@mid$(@list$(py%),px%,1),BMES):ok%=0

        if ok%

            case ton%:playsound pop.wav,1
            list$ py% = @del$(@list$(py%),px%,1)
            list$ py% = @ins$(S,@list$(py%),px%)
            list$ my% = @del$(@list$(my%),mx%,1)
            list$ my% = @ins$( ,@list$(my%),mx%)
            drawicon STEIN,((px% - 1) *32),((py% - 1) * 32)
            drawicon WEG,  ((mx% - 1) *32),((my% - 1) * 32)

        endif

    endif

    if @instr(f$,M)

        case @instr(@mid$(@list$(py%),px%,1),BSE):ok%=0

        if ok%

            case ton%:playsound bloop.wav,1
            list$ py% = @del$(@list$(py%),px%,1)
            list$ py% = @ins$(M,@list$(py%),px%)
            list$ my% = @del$(@list$(my%),mx%,1)
            list$ my% = @ins$( ,@list$(my%),mx%)
            drawicon MUELL,((px% - 1) *32),((py% - 1) * 32)
            drawicon WEG,  ((mx% - 1) *32),((my% - 1) * 32)

        endif

        if @instr(@mid$(@list$(py%),px%,1),E)

            ok%=1
            anz%=@add(anz%,1)
            list$ my% = @del$(@list$(my%),mx%,1)
            list$ my% = @ins$( ,@list$(my%),mx%)
            drawicon WEG,  ((mx% - 1) *32),((my% - 1) * 32)
            case ton%:playsound laser.wav,0

        endif

    endif

    ifnot ok%

        case ton%:playsound vault.wav,1
        return

    endif

    drawicon GESICHT,((mx% - 1) *32),((my% - 1) * 32)
    drawicon WEG,    ((fx% - 1) *32),((fy% - 1) * 32)
    i%  = mx%
    mx% = fx%
    fx% = i%
    i%  = my%
    my% = fy%
    fy% = i%

    if @equ(anz%,vorg%)

        copysizedbmp ((fx% - 1) * 32),((fy% - 1) * 32) - 32,32 > 32,32-384,320;0
        case ton%:playsound applaus2.wav,1
        messagebox(Du hast es geschafft!,G E W O N N E N !,48)
        ende%=1

    endif

ENDPROC

PROC ENDE

    case (ton% = 1):BEEP
    case messagebox(Willst Du wirklich aufhören?,SPIELENDE,36) = 6:ende% = 1

ENDPROC

PROC HILFE

    f$ = DAS MÜLLSPIEL
    + Ihre Aufgabe als Parkwächter ist es, den Müll in den
    + bereitstehenden Mülleimer zu schieben. Der direkte Weg
    + wird leider durch Bäume und Steine versperrt. Während
    + die Bäume fest stehen, können die Steine verschoben werden.
    case messagebox(f$,ANLEITUNG 1/3,65) = 2:return
    f$ = Bewegung:
    + Sie können ein Feld waagrecht oder senkrecht laufen,
    + nicht aber diagonal. Klicken Sie mit der Maus auf das
    + Feld, auf das Sie wollen. Liegt dort Müll oder ein Stein,
    + so wird dieser in Laufrichtung weitergeschoben.
    case messagebox(f$,ANLEITUNG 2/3,65) = 2:return
    f$ = Übrige Funktionen:
    + Über den Menüpunkt Ton können Sie den Sound an- und
    + ausschalten. Mit Ende können Sie das Spiel beenden.
    + Das Spiel ist komplett in XProfan geschrieben.
    messagebox(f$,ANLEITUNG 3/3,64)

ENDPROC

popup &Spiel
appendmenu 180,&Neues Spiel
appendmenu 190,&Ton	F2
appendmenu 200,&Ende	F3
popup &Hilfe
appendmenu 210,&Hilfe	F1
appendmenu 220ber
ton%=1
checkmenu 190,1
SPIELFELD
ende% = 0

whilenot ende%

    waitinput
    mx%=fx%
    my%=fy%

    ifnot %mousekey

        case @scankey(39):inc mx%
        case @scankey(37):dec mx%
        case @scankey(40):inc my%
        case @scankey(38):dec my%

    else

        mx%=(%mousex  32) + 1
        my%=(%mousey  32) + 1

    endif

    case @menuitem(180):SPIELFELD
    case @menuitem(190):TON
    case @menuitem(200):ENDE
    case @menuitem(210):HILFE

    if @or(@menuitem(220),@menuitem(254))

        playsound fanfare.wav,1
        messagebox(© 1992-2003 Roland G. Hülsmann,DAS MÜLLSPIEL - DEMO,48)

    endif

    If (%scankey > 110)

        case @scankey(113):TON
        case @scankey(112):HILFE
        case @scankey(114):ENDE

    Else

        case @menuitem(0):SPIEL

    Endif

wend

usecursor 0
end
 
16.07.2007  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.788 Views

Untitledvor 0 min.
Thomas Zielinski23.12.2013
iF22.01.2013

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie