C'est pas de l'ANSImicrodevweb a écrit :C'est coll Djes, mais pourquoi les data en ansi?

C'est pas de l'ANSImicrodevweb a écrit :C'est coll Djes, mais pourquoi les data en ansi?
En unicode plutôt, parce qu'un caractère est codé sur 2 octets (donc 2 fois plus de datas à dispo).microdevweb a écrit :C'est coll Djes, mais pourquoi les data en ansi?
Oui, c'est l'idée ! Cependant plusieurs caractères unicode ne sont pas utilisables directement, et le source pb doit être en utf8, ce qui limite aussi les possibilités. Je les utilise donc à raison de 12 bits par caractère au lieu de 16.majikeyric a écrit :En unicode plutôt, parce qu'un caractère est codé sur 2 octets (donc 2 fois plus de datas à dispo).microdevweb a écrit :C'est coll Djes, mais pourquoi les data en ansi?
C'est de la faute de fredPatrick88 a écrit :le code de djes plante ligne 56, [ERREUR] Le #Sprite spécifié n'est pas initialisé.
de plus, j'ai des "?" à la place des caractères unimachin, quand je colle le code du forum vers l’éditeur de pb....
Pat
c'est pas le genre de "truc" qu'il faut indiquer dans l’entête du programme ?majikeyric a écrit :Et il faut compiler en unicode
je confirme, à la compilation sans la case unicode "ça ne marche pô"..., sinon là, avec ton archive, l'exe 64 ou le code source, c'est bon, ça "tcheumen" (comme on dit "chéénou")djes a écrit :Je croyais que c'était obligatoire, l'unicode, maintenant ! Bon, ben, -3 points, je bats mon record O:-)
Essaye l'archive, le code y est en utf8, pas de souci de copier coller à cause des navigateurs. Au pire il y a aussi l'exe. Sinon pour ta question c'est oui, vous pouvez poster les compléments maintenant, s'ouvrira le post de vote des que j'aurai 5 mnskernadec a écrit :bonjour
@djes pas pu faire fonctionner ton code sur XP32, j'ai une erreur ligne 56??
J'ai une question: peut on poster un code punch qui participe à ce concourt en clair dès maintenant![]()
Cordialement
Code : Tout sélectionner
;*****************************************************************************
;*
;* XMas 2014 PurePunch contest
;* PureBasic 5.xx or SpiderBasic 1.00 Beta
;* 64 lines of 80 chars of code + 128 lines of data
;*
;* Name : Christmas Desktop ScreenSaver
;* Author : Ar-S
;* Date : Dec 2014
;* Notes : Here is my ScreenSaver - Escape to Exit
;*
;*****************************************************************************
UsePNGImageDecoder()
Macro M : Macro : EndMacro
M D : Data.q : EndMacro
M G : Global : EndMacro
M En : Enumeration : EndMacro
M Pr : Procedure:EndMacro
G CaptureScreenWidth , CaptureScreenHeight , CaptureScreenBMPHandle
G W = GetSystemMetrics_(#SM_CXSCREEN), H = GetSystemMetrics_(#SM_CYSCREEN)
G NF=24, NG=6
Structure An
X.i:Y.i:V.i
EndStructure
G Dim Floc.An(NF)
G Dim PN.An(0)
G Dim KD.An(NKD)
Pr CaptureScreenPart(Left.l, Top.l, Width.l, Height.l)
dm.DEVMODE
BMPHandle.l
srcDC = CreateDC_("DISPLAY", "", "", dm)
trgDC = CreateCompatibleDC_(srcDC)
BMPHandle = CreateCompatibleBitmap_(srcDC, Width, Height)
SelectObject_( trgDC, BMPHandle)
BitBlt_( trgDC, 0, 0, Width, Height, srcDC, Left, Top, #SRCCOPY)
DeleteDC_( trgDC)
ReleaseDC_( BMPHandle, srcDC)
CaptureScreenHeight=Height
CaptureScreenWidth=Width
CaptureScreenBMPHandle=BMPHandle
Pr#Return BMPHandle
EndProcedure
Pr CaptureFullScreen()
Pr#Return CaptureScreenPart(0,0,W,H)
EndProcedure
Pr MemCapture()
Protected Id
If CaptureScreenBMPHandle
Id=CreateImage(#PB_Any, CaptureScreenWidth, CaptureScreenHeight)
StartDrawing(ImageOutput(id))
DrawImage(CaptureScreenBMPHandle,0,0)
StopDrawing()
EndIf
Pr#Return CaptureScreenBMPHandle
EndProcedure
En images
#IF : #PL : #PR : #FL
EndEnumeration
En Timer
#TPN
EndEnumeration
CaptureFullScreen()
Ifull = CatchImage(#IF, ?IM)
NL = GrabImage(#IF,#PL,0,0,30,40)
NR = GrabImage(#IF,#PR,30,0,30,40)
FL = GrabImage(#IF,#FL,60,0,38,40)
FreeImage(#IF)
SP=NR
NPR=0
hwnd = OpenWindow(0,0,0,W,H,"Christmas ScreenSaver",#PB_Window_BorderLess)
StickyWindow(0,#True)
CanvasGadget(1,0,0,W,H,#PB_Canvas_ClipMouse| #PB_Canvas_Keyboard )
For Vi = 0 To NF
FLoc(Vi)\X = Random(W-50,50)
FLoc(Vi)\V = Random (10,2)
Next
Repeat
WaitWindowEvent(30)
Select EventGadget()
Case 1
SetGadgetAttribute(1,#PB_Canvas_Cursor,#PB_Cursor_Invisible)
Select EventType()
Case #PB_EventType_MouseMove
GO=1
Mx = GetGadgetAttribute(1,#PB_Canvas_MouseX)
My = GetGadgetAttribute(1,#PB_Canvas_MouseY)
If PN(0)\X > Mx
SP = NL
PN(0)\X = Mx+20 : PN(0)\Y = My-30
Else
SP = NR
PN(0)\X = Mx-40 : PN(0)\Y = My-30
EndIf
EndSelect
EndSelect
If StartDrawing(CanvasOutput(1))
DrawImage(CaptureScreenBMPHandle,0,0)
For F = 0 To NF
FLoc(F)\Y + FLoc(F)\V
If Floc(F)\Y > H +50
Floc(F)\Y = -50
EndIf
DrawAlphaImage(FL,Floc(F)\X, Floc(F)\Y)
Next
If GO=1
DrawAlphaImage(SP,PN(0)\X, PN(0)\Y)
EndIf
StopDrawing()
EndIf
If GetAsyncKeyState_(#VK_ESCAPE)
Q=1
EndIf
Until Q = 1
FreeImage(#PB_All)
End
DataSection: IM:
D $0A1A0A0D474E5089,$524448490D000000,$2800000062000000,$2F66050000000608,
$5845741900000004,$72617774666F5374,$2065626F64410065,$6165526567616D49,
$00003C65C9717964,$DA7854414449950A,$9E15C554740D5BEC,$5A88FCB504409BB7,
$03F82DAD8D80A295,$6228516229442C15,$B50221116D2BFD6D,$B52A23C5AA1B4355,
$4B5480434A3C1680,$4873F2A25B4552A1,$0AD0953F20AA052D,$12862405128AC158,
$4DFBBBDEDD90810C,$9B37676F7BECEEF6,$DBEEC9EE73DC96D8,$77EEFDCEE6F37999,
$1B2957F9F938BCEF,$F59B59384AF79929,$E4EBBC3AD56C1F73,$72EABBC7DDB050FA,
$BED27B502FB83B4F,$9A9A9CB2AA879543,$F4754103BB7D4E60,$BAB3C2FF6B347380,
$31E8F7B9B14B29D5,$5329CCE6B19B1D03,$364AC1C995928DFF,$F14BFE82ADC5E1AE,
$FAAB15AA5276D4D2,$D95D25B692AF937F,$7C9823391DE0866C,$5B4EEEDAE76015C3,
$216BEEA677BDB04F,$4F690CFD249F49AD,$E8D360301D8DC3D2,$333B2B7F3DB3B39A,
$1CC554DB5F9DAE2B,$DC813639952BDE4F,$9A3BD25769317A42,$113C75EC8EE423DC,
$A105796A396537A6,$BDD5C7BDA0C22D11,$D0CF48D79FB0A27B,$C08D87DD8E135DF7,
$CFF7451731E41AF7,$36C3792C784247B4,$4D7F490FFBE285A4,$05B89BF24FA7D07A,
$4830DC1F5C12136B,$5A939E7DA1387D41,$B630760440337520,$11A6FBAF7B743CCD,
$BE3E748E7E9007AC,$F48B7CDA352D230F,$55749BBA491E7C05,$FB49739004E9A1C6,
$3C14748C714A772A,$DFC75F36976AE581,$1369751E90EFD21C,$94D0A4F9FA4DED24,
$03D86B76E16827AA,$CF9DB1E1F61513B0,$8116253AE6D3F1AA,$D56E1F989A29B754,
$10F1178C45E8A6FD,$619ED0CEF9E8B98B,$CFBE905749ED550F,$6DF84FF490BA458E,
$7D20FF0788E3E91D,$A5861F80FBE96C00,$B47D18B49DDB6889,$749F3846023A415C,
$617823DD9B3FE928,$27749CA5866DA29B,$3FA21832E05885E9,$9B6849E935748869,
$30748CBA0F7A6807,$01A06157D254F2D6,$F6AEC017BC2BEE30,$6B98D6B0729EBE92,
$71109E4CBE0D19EB,$9655D6FE4417F68C,$F6A7775D3D8EECAB,$4B0CF06FF6636E42,
$9337B178434DF3D1,$05ADA2C40DAE225E,$26691CE75F05DD3D,$1602749FBBB41769,
$9016F7AE35693B7F,$1AF8D5631B262CC5,$B44D17B09AD962A2,$15DD74D651156F0E,
$1A29BADC5F7F2223,$9D7D0784F2F47ADD,$2FCB5FDD7B7584DA,$6CFC3E629A9349CE,
$20CF4ACC979B5F67,$23DFA40DB5C50416,$0582FE31E64588DD,$FB423E7D1C7DE0E6,
$FD16AC30C1F6042A,$622BCBAFA5252F00,$C7FD911D39F90715,$16D1E1EFA1C0B4FD,
$E6C233A9ECEDB87D,$AD9BC9D19F3133FD,$CD206ED715F7C2C6,$A749D3FAEC2BAE05,
$F48FBD274CB0AE22,$86177B7807DF7C43,$BE9DCC6016FC6BD2,$D68C4C3201A71C06,
$5F45A51C10AE92D0,$711DAAE123A54C25,$C850FFC4886135DF,$0E92B60311432E6F,
$0FB617978119BD21,$78E1E228DE5102E9,$E809BDC367DC09AF,$F59EC422C7F28C1A,
$4A074CD7D37AE282,$004914DF469FDDDE,$48CBCB39E03F7F3F,$3CE182BF84F002D6,
$3039F4877968430A,$C42CEE779D714AA6,$FD20769267922609,$10186FD220C23089,
$4AA99C2A6CE84B18,$424B8B98A6EB3363,$03F858E3F5760B77,$15C69A4B504799A0,
$FA407DA490DBD214,$E43AD17831CA7845,$03BE05052E91E707,$C6160CECC601D530,
$54937094F053C679,$176882116547FF5F,$2838659CF000DA04,$954D823FD7D058EA,
$FE93276301EA9E03,$44BEA1D458C7F901,$3F491DA40AE637FA,$A06D7D293A792F0B,
$347A7E3147A7739D,$CDB1D099DF14D7F0,$4C7B7F65BF0959D8,$B75158E8AC686C5C,
$0AEADFCD7DEF9E78,$1A5B42FC8AC68D2F,$40968AD66ED8187C,$12BCFD05BB08C33B,
$76E2436FBE2B7DBB,$6BA82556319E3B3D,$BB0F0E38273F456A,$06D4D9E8A5816E25,
$47BC8B4CB4702406,$45F767273A4AB14D,$E24B06B48927140D,$9A80FDB09230FCC0,
$B706BEE32159F1D3,$E63134011CA30F98,$3961F446D71008FF,$E089C67003D7500D,
$C271CE44AB7D2464,$9C163B7426B89AD6,$1588353A60C7E417,$2FE33BC41053250C,
$7C855D39809F0AE7,$FDAAF005AF80B7E2,$7341331988CEA480,$0A5032083DD4908B,
$F8463FCD60277CAA,$5A7617DA8D868D41,$B62515935A9B5D05,$FD10DFA36C7A9398,
$B32147D71A97D8B0,$9E1F3A4D8B9A7766,$8FE1644AE6BC04F2,$70C20692C0F20001,
$6D00FEC3611A508B,$E20978A0A39708D9,$C2F50449EB0C084A,$0CE0907D07583113,
$736D16D70B0F3DFC,$8BBE69BCEF8439F0,$775042B5AE2E5C8D,$84EF7F2630EBD3B0,
$AB8E6BE0070C877B,$91A88B229FB74221,$4FCCEBAFB5D757E0,$2EBC4F13E7BBA1B9,
$4F6A84A8F34E1096,$CC3DE923BA5B6B88,$FBF984BACEFD9D60,$E44C056F43BCD064,
$87DBBCB2088BFAE2,$C692E630479E4601,$B100B7E821B1806B,$F75B54427CC60263,
$E4BC0F7A45DEB282,$9BD845C8A46718E7,$2ECC47BB3456384A,$530953E21BC70B2E,
$232357D0BCF2E0B5,$487B5F2432F49BBE,$C8B5A0A685B28927,$7F781FD1AE425E03,
$87D05B570CAD2A17,$71A83C625C80518D,$95CAA3B9472CDA01,$152EAC69A79A6935,
$B45E4462B29F1338,$147468AAB6A74BB5,$B3AFAF0BF183B392,$4ADCF1D713E8FEEC,
$C369424C69AC891E,$5E179E31821EB682,$E0775DA287CC49A1,$C550AFD11BD0D33F,
$7B161DFC7760E2DE,$BE11D750650C61A4,$94A900FC19090E25,$CC30234B6029ABA0,
$D7B7456D5801B2B0,$2981487DAA41A5FD,$E408AEFC332DFCE6,$08FA49BE59C702E7,
$8A52302FA4333802,$B8085F436233F4A2,$22A7E0B190F2F8E2,$2710DBDD6C8DEC01,
$0AA858CFEE7170B0,$4B21B68A01BA3094,$CBF634103C408C5E,$1D4A35487916B3E8,
$1DA5B10D7F61917B,$3173181DD3A3E2C6,$9777C9D09AE03060,$6C4ABF79762083CC,
$F0E97338E455684E,$5EB6D5DEAD82E20B,$8EC9643FECC9A1A1,$9AE2BC9108A23DC8,
$51BFED51FF81F2F0,$B8A801C072295A4F,$BF12FEEE82574356,$72E6C041CA68007F,
$23DAC032D15076F7,$158C60AFDA430430,$6B52D42E0A3BCEC8,$7F3D60FEE5F3C882,
$89BEA29462A6FC57,$504F22E5DE9E59AC,$F3566667C1EF6F28,$8AAEF800A1E43B90,
$56BBB741826C579E,$0D7E837B0479F433,$758D9EBB3E8CF4C5,$9D919E875D633C30,
$3BD64EC36E686FB7,$64BE3C80C9899F52,$D9FD99BFD6B067B3,$FA7CC8ADF978CE33,
$DDBBEB09E9EE5C7E,$24E7F479E209EF14,$615378EC542B11E7,$9C6B87BD5980BAE1,
$133FA12A31854C0F,$5AEE618B603DBDC1,$D7590E6D075FF3B1,$59125E2664C4FC9A,
$EBD7DCD9AAF4FA8C,$C0E5C869FEF6DC9C,$21847594904B2976,$DC01BFF0BC118802,
$3152FA88EA8A0BDC,$F51BD81244431DCA,$335594C11EBEA5AA,$5D982FD1A75F548D,
$E25B8DC36FDA3B3C,$12BDDBBD7AEF27E8,$173CAFD5D346D93A,$B305EECE31BDDE2D,
$8F9B3E423C204DB8,$008B27D7C4AB1447,$6672010F94C85941,$81C07E466CB14982,
$FBB81218E5181CFB,$23DBC529469EF18C,$797EA2E1B9BB2B2E,$9352149E4CA11F40,
$314EFE473E1A04A7,$21280BD657389708,$C9AD45E303CBD927,$79CC748F24E7AFEC,
$21E6CF92739A39C8,$F0437969D29D8A8E,$67077846D1406CFF,$42803043DBF1D3DD,
$F1CB68DBF8038FB1,$A47204A1E5EC9E43,$6DB2500F4BBABE85,$EFC7BF5501C3B608,
$A061A71DFA31007D,$DEB8C02B3F00DDA5,$BF0FD6B01B3C5947,$397F8A96779246CF,
$F38C96477A11E621,$26DD185EAE967EAF,$DB710861B67AB765,$3A4B9B26DB2236ED,
$9BAC088397324AF3,$3A1DCA3E7290C651,$0F9EFC4DB84F6443,$2EA047AE2187CA8F,
$97A661941975A545,$853308F16EE33F8A,$DADF975A9AC3D151,$66D2EF6DA03B4921,
$423E0712A8FCF8B9,$F946C576DEAA038E,$2924D6BA9C0EB836,$FA650DACC7DD5FAB,
$6ABC6DC9EE6C551F,$301E0DBC693E724D,$4349406DC29F2728,$D2DA618908B84F21,
$C835FDE4C5C911E2,$F33C11AC6ACCB59A,$9E5DF7103C27FB88,$2D4D728B281DE80F,
$0B33CD2016254693,$9A51DF89CE33579E,$357406264E6DE480,$B85C35BDD290F984,
$579C97BBF12A69B5,$530C770A28E9CE33,$6B25622D10CC9B87,$890018047FD83933,
$00CFC42F1512069D,$AE444E4549000000 : Data.b $42,$60,$82 : EndDataSection