Italia
Foro

Starpaint/Endpaint im Programm in un nProc von XPSE unterbringen....gab es mal was ?

 

funkheld
Hallo, guten Tag.
Wie kann ich bitte die Starpaint/Endpaint in meinem Programm in un nProc von XPSE unterbringen ?

Hier möchte ich sie bitte rein haben:
nProc drawhPicRotated(long hPic,dc,x,y,xx,yy,w,r)

diese:
startpaint vordergrpic&
drawpic hintergrpic&,0,0;0
drawpic bpic1&,dx!,dy!;-1,$ff00ff
endpaint

und wenn es auch geht diese, welches von der Tastatur gesteuert werden:

startpaint bpic1&
drawhPicRotated(bpicbmp&,hDC,50,50,50,50,winkel&,verh&)
endpaint

Das heisst ich möchte nur:
drawhPicRotated(bpicbmp&,hDC,50,50,50,50,winkel&,verh&)
aufrufenvon der Tastatur und das andere soll in der nProc abgearbeitet werden.

Irgendwo hatte ich hier mal gelesen, das so etws gemacht wurde.

Danke.
Gruss
 {$cleq}
declare bpic&, bpic1&,bpicbmp&,ende&,winkel&,hintergrpic&,vordergrpic&
declare x1!,y1!,dx!,dy!,verh&
ende&=1
bpic& = create("hPic",-1,"data\\auto.bmp")
Window 20,20-800,600
Cls RGB(220,220,220)
bpicbmp& = create("hNewPic", 100,100,rgb(255,0,255))
bpic1& = create("hNewPic", 100,100,rgb(255,0,255))
hintergrpic& = create("hNewPic", 500,500,rgb(255,255,0))
vordergrpic& = create("hNewPic", 500,500,rgb(255,255,0))
startpaint bpicbmp&
drawpic bpic&,18,18;-1,$ff00ff
EndPaint
startpaint hintergrpic&
UsePen 0,1,Rgb(,128,255)
usebrush 1,rgb(0,128,255)
ellipse 200,200-250,250
endpaint
verh&=75
dx!=60
dy!=60
startpaint bpic1&
drawhPicRotated(bpicbmp&,hDC,50,50,50,50,winkel&,verh&)
endpaint

WHILE ende&

    if isKey(83)

        y1!=Sin((winkel&/1000)/180.0*pi())*0.2
        x1!=Cos((winkel&/1000)/180.0*pi())*0.2
        dx!=dx!-x1!
        dy!=dy!-y1!

    endif

    if isKey(87)

        y1!=Sin((winkel&/1000)/180.0*pi())*0.2
        x1!=Cos((winkel&/1000)/180.0*pi())*0.2
        dx!=dx!+x1!
        dy!=dy!+y1!

    endif

    if isKey(81)

        winkel&=winkel&-1000
        startpaint bpic1&
        drawhPicRotated(bpicbmp&,hDC,50,50,50,50,winkel&,verh&)
        endpaint

    endif

    if isKey(69)

        winkel&=winkel&+1000
        startpaint bpic1&
        drawhPicRotated(bpicbmp&,hDC,50,50,50,50,winkel&,verh&)
        endpaint

    endif

    startpaint vordergrpic&
    drawpic hintergrpic&,0,0;0
    drawpic bpic1&,dx!,dy!;-1,$ff00ff
    endpaint
    drawpic vordergrpic&,10,10;0

ENDWHILE

end

nProc getCircP(long r,w)

    return long(sin(0.0174532925199433*float(w)/1000.0)*float(r))

endproc

nProc angleByLine(long x,y,xx,yy)

    sub y,yy
    sub x,xx

    if x

        xx=int(57295.77951 * arctan(float(y)/float(x)))
        case x>0 : return 270000 + xx
        return 90000 + xx

    endif

    case y<0 : return 180000
    return 0

endproc

nProc drawhPicRotated(long hPic,dc,x,y,xx,yy,w,r)

    long hDCBits=createCompatibleDC(hDC)
    selectObject(hDCBits, hPic)
    long pts=dim(24)
    long w1=angleByLine(xx,yy,0,0)
    Long w2=abs(w1-360000)
    Long w3=abs(w1-540000)
    casenot r : r=long(sqrt(float(xx*xx+yy*yy)))\2
    long pts&,0=x+getcircp(r,w1+w)
    long pts&,4=y+getcircp(r,w1-90000+w)
    long pts&,8=x+getcircp(r,w2+w)
    long pts&,12=y+getcircp(r,w2-90000+w)
    long pts&,16=x+getcircp(r,w3+w)
    long pts&,20=y+getcircp(r,w3-90000+w)
    plgBlt(dc,pts,hDCBits,0,0,100,100,0,0,0)
    deleteDC(hDCBits)
    dispose(pts)

endproc

 
16.04.2016  
 



Schaue Dir mal Hubschrauber - 2D Heli Proto  [...]  an,

per genau sowas hatte ich diese Funktionen ja geschrieben und dort z.B. umgesetzt.

Ergänzend dazu hatte Io l' GameFuller erstellt:  [...] 

Im 2D Heli Proto siehst Du auch Tastatur-Sprite Steuerung.
 
16.04.2016  
 




funkheld
Danke.

Aber diese Fehlermeldung kommt.

Gruss

16 kB
Hochgeladen:16.04.2016
Downloadcounter171
Download
16 kB
Hochgeladen:16.04.2016
Downloadcounter203
Download
 
16.04.2016  
 




funkheld
Da finde ich keine Startpaint per eine nProc.
Irgendwie gab es die doch mal per eine nProc ...? oder nicht ?

Danke.
Gruss
 
16.04.2016  
 



Die Meldungen sind ja egal, musst Dich einarbeiten.

StartPaint in nProcs ergeben eher wenig Sinn, da man ja die DCs als Parameter übergibt. Vielleicht hilft Dir dies zu wissen:

Innerhalb von StartPaint also hDC den gestartpainteten DC liefert den man wiederum in nProcs verwendet per DC-Operation.
 
16.04.2016  
 




funkheld
Ja danke.
Jetzt habe ich es geschnallt.

Ich dachte, ich hatte mal so etwas hier gelesen, das es so etwas per XPSE gab.

Gruss
 
16.04.2016  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

5.805 Views

Untitledvor 0 min.
RudiB.15.01.2022
p.specht02.08.2018
Torsten Rümker10.05.2016
Ernst07.05.2016
Di più...

Themeninformationen

Dieses Thema hat 2 subscriber:

funkheld (4x)
iF (2x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


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