native animsprite commands

Got an idea for enhancing PureBasic? New command(s) you'd like to see?
User avatar
N_Gnom
User
User
Posts: 76
Joined: Fri Sep 13, 2013 3:20 pm
Location: Germany

native animsprite commands

Post by N_Gnom »

If its possible it was great to have LoadAnimSprite and DisplayAnimSprite commands.
Or a extend for the Displaysprite command.
AnimSprite is a spritesheet with several spriteframe with width and heigh and a count of frames.

Its easier than clipsprite.
And a PlayAnimSprite and such one is superb too.

Fred...is its possible?
I produce some 2D games and it was great if you can make this.
User avatar
STARGÅTE
Addict
Addict
Posts: 2227
Joined: Thu Jan 10, 2008 1:30 pm
Location: Germany, Glienicke
Contact:

Re: native animsprite commands

Post by STARGÅTE »

N_Gnom wrote:Its easier than clipsprite.
hmm, I think it could not be easier ^^

Code: Select all

InitSprite()
UsePNGImageDecoder()

Enumeration
	#Window
	#Sprite
EndEnumeration

OpenWindow(#Window, 0, 0, 200, 200, "ScreenTitle", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#Window), 0, 0, WindowWidth(#Window), WindowHeight(#Window), 0, 0, 0)

CatchSprite(#Sprite, ?Animation, #PB_Sprite_AlphaBlending)

Repeat
	
	Repeat
		
		Select WindowEvent()
			Case #PB_Event_CloseWindow
				End
			Case #Null
				Break
		EndSelect
		
	ForEver
	
	ClearScreen($E0E0E0)
	
	ClipSprite(#Sprite, (ElapsedMilliseconds()/80)%9*40, 0, 40, 40)
	DisplayTransparentSprite(#Sprite, 50, 50)
	
	FlipBuffers()
	
ForEver


DataSection
	Animation:
	Data.q $0A1A0A0D474E5089,$524448490D000000,$2800000068010000,$9014E40000000308,$475273010000003F
	Data.q $0000E91CCEAE0042,$000045544C506F00,$4008000000000000,$0000800000420000,$2021842121000084
	Data.q $E70000E0912424A5,$4241424040400000,$4848A54242424242,$A54060A0C66363B6,$E784004263A54261
	Data.q $8284808080DA6D6D,$91E7848484848484,$A5A2A5A4A0A0FF91,$A2E780A0E0A5A5A5,$E7E0E0E084A5E784
	Data.q $265911E7E7E7E7E3,$4E5274010000008E,$000066D8E6400053,$880044474B620100,$7009000000481D05
	Data.q $00C40E0000735948,$1B0E2B9501C40E00,$454D497407000000,$E30C02150B0BDD07,$490C090000735CC8
	Data.q $7F9AEDDE68544144,$B0D509861338AA7B,$574B518ACBA89694,$1F84CF3B8CFFF7CB,$6F3FEFBBB5109201
	Data.q $CCE29F63D3AE73AE,$5B9E493603264F3D,$783E5FFF7517EB0A,$5875630C2BF7ED4A,$BF59BD953EFFAC3B
	Data.q $9558B466A74DFBA6,$75D05ED7E4307B65,$EFF58631E3BB7790,$F8BAEBD7B7B5116D,$1BB30C33303AC482
	Data.q $69CBA0BD96610208,$E6BF35823F3CE831,$613D7AC6B264D00F,$0B8F7B6EB17486A5,$2760778905F17562
	Data.q $9AF66D0CF0446EAE,$EA06906FF3AC372E,$6601752B88050F3C,$02DD58AF1B30392F,$CA9DE2417C5D28D2
	Data.q $419F3E753780055A,$F489BE1F501D55F0,$5376719C3CF3A805,$F70923DC2CE53954,$4D785E110A32CBC5
	Data.q $AB6C8A9C47B85B17,$7557C10D9F3FBF6A,$72E5DDEFE803BE49,$F6903A5C8050E901,$8062AFC184B1EE15
	Data.q $3A45C2D8BACBFDE7,$07EF63940F38F810,$8E1C3F30F3E3AB18,$90A8050E90C5CBC7,$AAC26448B707DA86
	Data.q $8BAB185F9F8695EB,$7B767BCD038C5C2F,$833AB1823ECF6DB3,$3410638E340EC799,$24C48B656DBD145F
	Data.q $B184FA59AE99343C,$036540EEB70A87BA,$4BAF3EFF4820B73C,$4BF7EEB4CE01C4CC,$7CF56122FDA4F480
	Data.q $1FBDBA214E66B3C2,$26840EEB70AC7BAB,$3C42FA0A00EA9D63,$A41DCBE836764BAD,$ADE1C643806F5FE9
	Data.q $5D08A4039AB09AB4,$0738905F17563CFD,$ACF14112011AC366,$D03AEF419CE4012E,$138354037A917D29
	Data.q $30C1F6612E245B3C,$20A47BAF3E11F62E,$2CF00CEB1E9C0E91,$E913411AC3E5D69E,$9F08E4031AA01BD4
	Data.q $719C84E8368D584B,$1C0ED120BE2EACF6,$92FD0AD740D93003,$F409A3D10EEFEF2E,$C229A0DA01FD4D25
	Data.q $7EC2EA307CB61367,$955398F20BA2E809,$ED4170AB6D554749,$EFEBB22A79D0E801,$BB95EB4F7D008FC3
	Data.q $D1E1317C23900E57,$E16C5D15F2BD7CFB,$213C3C7E3AA81D62,$BE13A9D15E709BDF,$CD0EFBF70FA40EF1
	Data.q $403EAAC76681F6A3,$E14FAE878495F08E,$A2E8C719BC138DED,$68019F1ED4E5170B,$C77A595D1362E056
	Data.q $DFEF984DFE0F733B,$500C68C1C1269A69,$EC2A810FD540EF3C,$AA9D2241745D5898,$6DF49556086E76C6
	Data.q $1DCECFB52CAEB98E,$B4F8059C0642B368,$54CC321C249A9503,$170BD7DE9E1D1BA7,$8FA4B1291F8B54E3
	Data.q $6A574E994606B9B3,$870FA430F071E817,$78498A56FAF3986D,$9DE1255560BBB7CC,$52D826DB69BA7469
	Data.q $9810EE2A738BE2D7,$A1B28A66BC95E81F,$BC64314B005C1BA5,$EE986EE18797984E,$0E32D64DBB6B1A40
	Data.q $1C351863C3CF3806,$AABAA74DBF18EC9B,$172AF882F59AE941,$CAFC760866E4D4EB,$DBF2D2472DD03B45
	Data.q $AA9A4AD77857BBD0,$895FBE5344B345E8,$3CAC4E61F5BC61B3,$0A2F12B7047F4EBE,$BF0668E19554E422
	Data.q $CF5AA6C797FBA51B,$C9E8018DAF49AD74,$7E2D940EB754E163,$51A22F31026076CB,$01B38B8A886EEA9A
	Data.q $2247E08D7467077D,$9F9F9FA79FDD51E6,$BD4CE1343EEE1FD3,$58CF25901D2F9FD9,$475B4BAD536FCDD5
	Data.q $CCCD0C552DC8584A,$353B2AB06B639E3B,$DD1AB4264E17D33B,$A1B6E81DA39F9B6A,$D79EF3D083CE3A58
	Data.q $A0FDAEB9FDCD007A,$B52567CFD7F39193,$D6E81D974C872873,$E7C259666E052F9F,$A9474188067129B3
	Data.q $4F71E25F633A0D34,$6700AADDCAC7AA41,$AD99C7DA4025A640,$34BA0A03B473F16A,$45BEF67E8EEE939C
	Data.q $2C7F15EBF74C9E31,$4DFE7F9AE7CAF5D0,$8C4F1B6EBF3E7FA0,$03BE7F3A1D3559C8,$062CB969B7A4CA40
	Data.q $7872FA44E1A0F750,$591AE69633C7295F,$8796CCB3AF670314,$0CE1E1DE88850553,$839AA7D61CFCDAAF
	Data.q $6D671BA4C020DCB3,$5C7EBD7D7BE836CE,$8FEA3FA87D219DEB,$F4F9F8E7724CE720,$A2C6D06B30780179
	Data.q $7F552B8E3FF957DD,$18A2F4CD36F55907,$6BF432153E3A0F5A,$48AD8CD9BCE249D6,$CF7D632B402E2816
	Data.q $D67119F1DA6ADAF1,$F376ADCE7BEBD9DA,$5B9B436A11B92F9B,$6A3D85CC06784FF4,$1F7FDDDD6BD7B75D
	Data.q $9D3A7533A0EB1F0E,$95A92CB37B033F3E,$BFE6607094D95D02,$C1597F23E0DADD16,$4AAC1C919AEB22A6
	Data.q $3A375E8E96C04676,$CDACAD4CE2D2CE0D,$71A43B19432842F6,$7A7BBD93CF1D8786,$CF659B9A63DA1231
	Data.q $3324E8D9B37A042F,$6BA0676BE54A4331,$91F9E69D7576329A,$A18D5C7410738368,$03D09D483C89B3E2
	Data.q $2539B999BDC0325A,$2EEE71CA0825A7E2,$09D511D3377D868A,$E36750C8E0B40EE7,$901FA2DF3386E749
	Data.q $9216D74B9AF8534D,$B1046CDCB49F9F8E,$43E5A1A9862659D6,$26B4E812DDBCE2C7,$1F1F2498EEF9A747
	Data.q $2292004EBF36866B,$2CE0112B2C1FBA04,$20BA680E4FC72CD1,$F4CCE0096C704C7A,$4BA0A689190744D4
	Data.q $E368A8341AA0CADC,$F5A2B9E1296800C9,$88FC0FB364B697B4,$84771A3254D0D79E,$6E440E7C795C275D
	Data.q $68053CD34E806BAE,$AE00971716D64EA0,$1E9421A8306F8394,$99B43427C9AA1021,$62D00CE2D5386429
	Data.q $E729CBA002450BFA,$3D19B1D1FA2EB48E,$974F6733430D22E9,$E3AB188EF6E9BAD6,$DDEA97D6EB4A2D07
	Data.q $41FD22686DB5A5D0,$EBCD2189A46BA9A4,$0833F07D4D021B7D,$E7B52CBAF838ECDA,$85FD3168D9A52CC1
	Data.q $2359C8CDEA435827,$39CC2BB1E981745E,$8A834723451D1D38,$EA0B514C21F7BCBF,$27AF9EB0367C74D1
	Data.q $D46C38B9F0FA6DE0,$0C27D390E7700FD9,$A6DC0DBE683699BA,$6A469CBAD3F29269,$7134341B6DFDF983
	Data.q $216B41020F6AFC0E,$9B28AA8F6A8102D0,$19904E716D064119,$37489A0DD9C66B79,$C4847A0F90B2EBA3
	Data.q $68DD94129B9059BA,$CCC500C8CA0A9345,$412C5151B59EA5D0,$10C685D6F943CF5B,$27D0C27E41BD4E70
	Data.q $E69137A7DF3CBE21,$85647A5439D50123,$EC6C67198A59DF9C,$3A99C96E85935002,$4F12C7A48E83034A
	Data.q $7507B58908D8159F,$7B3F0A05742D2AA7,$5EB68174B073863C,$3BFBF4099D8FA74B,$2B7189A0FD6DBEFE
	Data.q $7DC683F12BEBE9E4,$B4E96830226FC2A9,$CE6D0097ABD0C0B4,$98AEC797AD50B709,$3D32C85B8FE31C4E
	Data.q $E76B321178528B0E,$F8BD6836D3236DD3,$ACC084076874C308,$D8CE15D7EFEFD750,$29A04329493A749F
	Data.q $25CBA1E0AFBB8CC3,$C2C3FCF97286D816,$5EBA1667177E666C,$5B97029BBA9741B5,$01F0D911BA1846C2
	Data.q $B85A00416583356B,$3E72AF40995D0BE2,$0F0B69A08217DC35,$8511751D2391C62E,$F892294B39B214FF
	Data.q $8C43C9536DE3D205,$53BA46B846C25E5E,$1274D00A1E2F6D79,$6CABB9C82DF5F432,$B0D7BD16262BF8D3
	Data.q $963C52D075E8F576,$841A0DEA57AAB086,$1BD055CA10E89076,$A033C972638EA7EF,$391F341BA3C726DF
	Data.q $BADDCF56C6E34B5E,$3C1C593A1BAC470C,$798979C09FC7A431,$7D8168196A10F85B,$9DB0E80464027B27
	Data.q $74518EE934FDCE3B,$BC9D0DD628E15DDF,$0611DBE948D8A398,$FC99668E23F358A1,$741EE7682DF4E93E
	Data.q $FBE18B210769D24F,$4761BF5A5FFC7B91,$D6CC4B07FE4C82BA,$DAD107FE5A08268A,$1DF766442007FBFF
	Data.q $4900000000307EF4,$00826042AE444E45
EndDataSection
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Lizard - Script language for symbolic calculations and moreTypeface - Sprite-based font include/module
User avatar
J. Baker
Addict
Addict
Posts: 2181
Joined: Sun Apr 27, 2003 8:12 am
Location: USA
Contact:

Re: native animsprite commands

Post by J. Baker »

Here's my latest AnimateSprite procedure.
http://www.purebasic.fr/english/viewtop ... matesprite
www.posemotion.com

PureBasic Tools for OS X: PureMonitor, plist Tool, Data Maker & App Chef


Even the vine knows it surroundings but the man with eyes does not.
Post Reply