Deutsch
Quelltexte/ Codesnippets

Bildschirmschoner Schiebepuzzle

 

Nico
Madysa
Das kommt raus, wenn ich Langeweile hab :
EX% / EY% = Anzahl der Spalten / Zeilen, jeweils -1
var ex% = 4
var ey% = 3
Der Rest ergibt sich von selbst
var dx% = %MaxX / (ex% + 1)
var dy% = %MaxY / (ey% + 1)
var x% = ex%
var y% = ey%
var altdir% = 0
declare dir% , bed% , gis%
WindowStyle 1024 + 240
Window 0 , 0 - %MaxX , %MaxY + 5
WindowTitle Bildschirmschoner
Randomize
UseBrush 1 , 0
ShowCursor 0
Entfernen der unbenötigten Teile
Rectangle (ex%+1)*dx%,0 - %MaxX,%MaxY
Rectangle 0,(ey%+1)*dy% - %MaxX,%MaxY
Rectangle ex%*dx%,ey%*dy%-(ex%+1)*dx%,(ey%+1)*dy%

while gis% < 10

    clear bed%
    altdir% = dir%

    repeat

        dir% = Rnd(4) ^0 v1 <2 >3
        case ((dir% = 0) and (y% <> 0)) : inc bed%
        case ((dir% = 1) and (y% <> ey%)) : inc bed%
        case ((dir% = 2) and (x% <> 0)) : inc bed%
        case ((dir% = 3) and (x% <> ex%)) : inc bed%
        case ((altdir% + dir% = 1) or (altdir% + dir% = 5)) : clear bed%

    until bed%

    Select dir%

        CaseOf 0 HOCH

        whileloop ((y% - 1) * dy%) , ((y% * dy%) - 1) , 1

            CopyBMP (x% * dx%) , &loop - dx% , dy% > (x% * dx%) , (&loop + 1) ; 0
            Line (x% * dx%) , &loop - (((x% + 1) * dx%) - 1) , &loop
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        dec y%

        CaseOf 1 RUNTER

        whileloop ((y% + 1) * dy%) , ((y% * dy%) + 1) , (-1)

            CopyBMP (x% * dx%) , &loop - dx% , dy% > (x% * dx%) , (&loop - 1) ; 0
            Line (x% * dx%) , (&loop + dy% - 1) - (((x% + 1) * dx%) - 1) , (&loop + dy% - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        inc y%

        CaseOf 2 LINKS

        whileloop ((x% - 1) * dx%) , ((x% * dx%) - 1) , 1

            CopyBMP &loop , (y% * dy%) - dx% , dy% > (&loop + 1) , (y% * dy%) ; 0
            Line &loop , (y% * dy%) - &loop , (((y% + 1) * dy%) - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        dec x%

        CaseOf 3 RECHTS

        whileloop ((x% + 1) * dx%) , ((x% * dx%) + 1) , (-1)

            CopyBMP &loop , (y% * dy%) - dx% , dy% > (&loop - 1) , (y% * dy%) ; 0
            Line (&loop + dx% - 1) , (y% * dy%) - (&loop + dx% - 1) , (((y% + 1) * dy%) - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        inc x%

    EndSelect

    case %GetInputState : inc gis%

wend

ShowCursor 1
end

3 kB
Kurzbeschreibung: Screensaver - Quelltext
Hochgeladen:18.02.2008
Ladeanzahl300
Herunterladen
 
Nico Madysa
18.02.2008  
 




Paul
Glatz
Giebts das auch für XProfan 8.0
Paul
 
19.02.2008  
 




Dietmar
Horn
Hallo Paul,

hier der Code für XProfan 8, damit Du bis Freitag nicht allzu viel Langeweile hast:
EX% / EY% = Anzahl der Spalten / Zeilen, jeweils -1
declare ex%,ey%
ex% = 4
ey% = 3
Das sieht auch recht nett aus:
ex% = 19
ey% = 13
Der Rest ergibt sich von selbst
declare dx%,dy%,x%,y%,altdir%
dx% = %MaxX / (ex% + 1)
dy% = %MaxY / (ey% + 1)
x% = ex%
y% = ey%
altdir% = 0
declare dir% , bed% , gis%
###########################################################
WindowStyle 1024 + 240
Window 0 , 0 - %MaxX , %MaxY + 5
WindowTitle Bildschirmschoner
Randomize
UseBrush 1 , 0
ShowCursor 0
Entfernen der unbenötigten Teile
Rectangle (ex%+1)*dx%,0 - %MaxX,%MaxY
Rectangle 0,(ey%+1)*dy% - %MaxX,%MaxY
Rectangle ex%*dx%,ey%*dy%-(ex%+1)*dx%,(ey%+1)*dy%

while gis% < 10

    clear bed%
    altdir% = dir%

    whilenot bed%

        dir% = Rnd(4)^0 v1 <2 >3
        case ((dir% = 0) and (y% <> 0)) : inc bed%
        case ((dir% = 1) and (y% <> ey%)) : inc bed%
        case ((dir% = 2) and (x% <> 0)) : inc bed%
        case ((dir% = 3) and (x% <> ex%)) : inc bed%
        case ((altdir% + dir% = 1) or (altdir% + dir% = 5)) : clear bed%

    endwhile

    if dir% = 0HOCH

        whileloop ((y% - 1) * dy%) , ((y% * dy%) - 1) , 1

            CopyBMP (x% * dx%) , &loop - dx% , dy% > (x% * dx%) , (&loop + 1) ; 0
            Line (x% * dx%) , &loop - (((x% + 1) * dx%) - 1) , &loop
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        dec y%

    elseif dir% =  1RUNTER

        whileloop ((y% + 1) * dy%) , ((y% * dy%) + 1) , (-1)

            CopyBMP (x% * dx%) , &loop - dx% , dy% > (x% * dx%) , (&loop - 1) ; 0
            Line (x% * dx%) , (&loop + dy% - 1) - (((x% + 1) * dx%) - 1) , (&loop + dy% - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        inc y%

    elseif dir% = 2LINKS

        whileloop ((x% - 1) * dx%) , ((x% * dx%) - 1) , 1

            CopyBMP &loop , (y% * dy%) - dx% , dy% > (&loop + 1) , (y% * dy%) ; 0
            Line &loop , (y% * dy%) - &loop , (((y% + 1) * dy%) - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        dec x%

    elseif dir% =  3RECHTS

        whileloop ((x% + 1) * dx%) , ((x% * dx%) + 1) , (-1)

            CopyBMP &loop , (y% * dy%) - dx% , dy% > (&loop - 1) , (y% * dy%) ; 0
            Line (&loop + dx% - 1) , (y% * dy%) - (&loop + dx% - 1) , (((y% + 1) * dy%) - 1)
            case %GetInputState : inc gis%
            Sleep 1

        EndWhile

        inc x%

    elseif %GetInputState

        inc gis%

    endif

endwhile

ShowCursor 1
end

Was tut man nicht alles für sein jüngstes Lieblings-Paulchen

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
19.02.2008  
 




Paul
Glatz
Läuft unter Vista nicht
kommt nur ein schwartzer bildschirm
Paul
 
21.02.2008  
 




Dietmar
Horn
Hallo,

ich kann dazu nicht viel sagen, denn leider habe ich kein Vista zum Testen. Aber langsam kommt mir das mit XProfan und Vista recht spanisch vor, denn urplötzlich sollen mehrere meiner Programme unter Vista nicht mehr korrekt funktionieren, die bis XP einwandfrei laufen.

Ich habe schon von mehreren Vista-Usern gehört, daß bei dem einen ein XProfan-Programm unter Vista funktioniert, und bei dem anderen nicht (Beispiel XProfan-Manager).

Vielleicht kann sich ein erfahrener XProfaner und Vista-User mal obigen relativ kurzen Code Zeile für Zeile vornehmen und nachschauen, wo genau da die Säge klemmt?

@Paul: Ich habe Nicos Code mal mit XProfan 11 compiliert und zur EXE gelingt. Läuft dieses Programm auf Deinem Laptop unter Vista?

Gruß
Dietmar

451 kB
Hochgeladen:21.02.2008
Ladeanzahl230
Herunterladen
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
21.02.2008  
 




Paul
Glatz
Es geht nicht kommt immernoch nur der schwartze bildschrim
Paul
 
21.02.2008  
 




Paul
Glatz
Hallo
ich glaube das problem ist Windowstyle.
Paul
 
21.02.2008  
 




Dietmar
Horn
Also dann kann das nur ein generelles XProfan-Problem, ein allgemeines Vista-Problem, oder irgendein Problem mit Deinem Vista-Laptop sein ... Unter XP laufen beide Codes jedenfalls tadellos und der zweite Code sogar mit XProfan 8.0.

Mal abwarten, welche Ergebnisse andere Vista-User hier evtl. noch posten ...

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
21.02.2008  
 




Paul
Glatz
Windowstyle 32 geht garnicht unter Vista könte das problem auslösen
Paul
 
21.02.2008  
 




Paul
Glatz
 
21.02.2008  
 




Frank
Abbing
Style 32 ist doch nur ein Flag, damit das Fenster beim Erstellen nicht mit einer Farbe gefüllt wird. Nur weil du den Hintergrund nicht sehen kannst, heißt es ja nicht, dass dieses Flag nicht funktioniert....
Was genau heißt geht nicht? Absturz? Programmabbruch? Bitte mal genauer werden.
 
21.02.2008  
 




Rolf
Koch
Und es ist der Windowsstyle
Nein Frank es gibt keinen Absturz unter Vista. Nur der Hintergrund wird schwarz gefärbt und die Kästchen werden ja in Schwarz gezeichnet. Bedeutet: Schwarz auf Schwarz = JO Was soll ich denn da sehen?
So z.b. sieht man alles:
Windowstyle 16+64+128
Weiser Hintergrund mit den schwarzen Kästchen.
 
21.02.2008  
 




Zum Quelltext


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

15.512 Betrachtungen

Unbenanntvor 0 min.
Frank16.04.2021
Julian Schmidt04.04.2012
Peter Max Müller05.12.2010

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie