Lots of work ahead...

Miscellaneous Forums/General Discussion/Lots of work ahead...

Heh, for my next game I have to convert all these Easter Bonus functions from Blitz Plus into BlitzMax Types and Functions, might take a while then...

Actually some are done already due to my BlitzMax Game Framework, but tons aren't :-( Also there are a lot of functions in Easter Bonus libraries that aren't listed here (some are converted already).

Anyway, I thought some people might be interested to see how many functions were required to make Easter Bonus (remember the libraries I made are missing). The source code file is 251k ! Yup that's a lot of typing.

Function AppScreenDrawMain(CopyToBuffer3)
Function GetLevelNameX%()
Function GetLevelNameY%()
Function RedrawScreen()	
Function RestoreScreen()		
Function DrawDebugStats()
Function DrawGameOverMessage(im)
Function AppScreenDraw(DrawMenu%, DrawMouse%)
Function CleanBackBuffer()
Function DoDirtyCopy()
Function DrawGraphics(BB%)
Function DrawCandle(d.DirtyRects)
Function CalcLX%(GridX)
Function CalcLY%(GridY)
Function CalcGridX%(f.Fruit)
Function CalcGridY%(f.Fruit)
Function ManageAnim()
Function LevelEndStart()
Function LevelEndStartDo()
Function ManageLevelEnd()
Function FadeMusic(Speed#)
Function LevelEndStop()	
Function ReadKeys()	
Function SelectSquare()
Function DrawStatusPanel(UseBuffer4)
Function UpdateScore()
Function UpdatePop()
Function InitGameScreen()		
Function InitLevel()
Function LoadGameData()
Function LoadSounds()
Function LoadImages()
Function CleanupStatus(m$)
Function CleanUp()
Function ShowFinishing()
Function DeleteFruit()
Function GetMouseCoords()
Function ShowMousePointer(UseBackBuffer%)
Function SetDisplayMode()
Function CreateDirtyRects()
Function FillGrid()
Function ClearIceGrid()	
Function FillIceGrid()	
Function DoMatches%(CheckOnly%, TestSwapping%)
Function FruitSwapping(x,y)
Function IncreaseGold()
Function DrawGoldTile(lx,ly)
Function MatchScore(Count%)	
Function DropFruit()
Function UpFruitCounter(x)	 ;not used
Function DropFruitCounter(x,row)	
Function MakeNewFruitObject(x,y)
Function MakeNewBonus.Fruit(x,y, btype)
Function RandFruit()	
Function TopRowClear()
Function DrawLeafThin()
Function LeafDialog(Message$, ClickAnywhere%)
Function FillFruitArray()
Function FruitSwap(CurrentX, CurrentY, TempX, TempY)
Function FruitSwapManage()
Function FruitSwapEnd(LCurrentX, LCurrentY, TempX, TempY)
Function FruitMoveAll()
Function FruitMove(f.fruit)
Function FruitArraySwap(s%, d%) ;source, dest	
Function FruitArrayFind%(f.fruit)
Function DrawHighlight()
Function GameSound%(Channel%, Sample%)
Function PreventLeftAlt()
Function BossKey()
Function DetectMinimize()
Function ChangeDisplayMode()
Function ChangeAlphaMaps()
Function MenuReconfigure(m.Menu)
Function MenuOptionsReload()
Function MenuOptionItemReload(index%, flag%)
Function PauseKey()
Function CalcEdges()
Function AdjustFruitCoords(dx, dy)
Function Titlescreen()
Function TitleScreenDrawMain()	
Function GetUpsellXCoord%()
Function GetUpsellYCoord%()
Function DrawUpsellPanel()	
Function RedrawTitleScreen()
Function TitleScreenDraw()		
Function HighScoresDraw()	
Function HighScoresClearBuffer()	
Function GameFade(FadeMusic)
Function GrabScreenKey()
Function GameOverScreen()
Function GameOverWaveDraw()		
Function GameOverScreenDraw()				
Function ManageNoMoreMoves()
Function NoMoreMoves%(RandomHint%)		
Function ResetDebug()
Function CalcCodeTime()
Function DoQuickMatchHoriz(sx,sy)
Function DoQuickMatchVert(sx,sy)	
Function FruitAnimManage%()
Function ExplodeAllFruit()
Function StartGameOver()
Function ContinueButtonSetCoords(TheBackground%)
Function ContinueButtonDrawOnBuffers()
Function LevelEndScreen()
Function DrawLevelStats(ExtraLife%, LevelScore%)
Function DrawOnAll3Buffers(im, x, y)
Function LevelEndWaveDraw()
Function ClearGrid()
Function StopAllChannels()
Function MenuSetup(m.Menu)
Function LoadMenus()
Function MenuTitleSetCoords(offx, offy)
Function MenuGameSetCoords(offx, offy)	
Function MenuOptionsSetCoords(offx, offy)	
Function MenuGameOverSetCoords(offx, offy)		
Function MenuYesNoSetCoords(offx, offy)		
Function LoadMenuItemOnOff(m.Menu, Index%, lx, ly, flag)
Function LoadMenuItemPercent(m.Menu, Index%, lx, ly, flag)	
Function MenuSetXY(m.Menu)
Function LoadMenuItem(m.Menu, Index%, filename$, lx, ly)
Function StandardKeys()	
Function ToggleSound()
Function ToggleMusic()
Function ChangeMusicVolume()
Function ChangeSoundVolume()
Function ToggleGrid()
Function ToggleAlphaBlend()
Function PlayGameMusic(file$)
Function MenuSetSound(m.Menu)
Function GameMusicNext()
Function BackgroundNext(Load)
Function LoadSky()
Function NoMoreMovesCalcAM()		
Function CalcAMCentre%(im, am, onsky)
Function HintCalcAM()
Function CalcOptionsBackground()
Function OptionsMenu()
Function FruitRestoreCoords(x, y)	
Function SpriteDelete(s.sprite)
Function SpriteDraw(s.sprite)
Function SpriteDrawMouseOverImage(s.sprite)
Function SpriteDrawOnBothBuffers(s.Sprite)
Function SpriteLoad(s.sprite, filename$)
Function SpriteLoadAM(s.sprite, filename$)
Function DrawHint()
Function ManageHint()	
Function DrawLeafImageShadow()
Function MenuGameDraw()		
Function PrepareMenuGameBackground()			
Function GameMenuShowHide()
Function DoGameMenuShowHide()
Function GameMenuClicked%()
Function BackGridFill(value%)	
Function EraseHint()
Function GameFlip()
Function SelectBackBufferDirty.DirtyRects()
Function AddToAll3DirtyRects(x,y,w,h)
Function AddImageToAll3DirtyRects(x,y, image)
Function DrawBlockOnBackground(x,y,image)
Function DrawBlockOnBuffer3(x,y,image)
Function DetectAltTab()
Function TopRowYClear()
Function TopRowYCalc()
Function PossFruitClear()
Function PossBonusClear()
Function LevelGridClear()
Function LevelGridRead()
Function GameFinishedDrawMain()	
Function GameFinishedDraw()		
Function RestartLevel()
Function ManageTimeLimit()
Function ParticleCreate.particle(x,y,xacc#,yacc#, ptype%)
Function ParticleDelete(p.particle)
Function DeleteAllParticles()
Function CalcParticleQuantity%(start%)
Function ExplodeIce(x,y)	
Function ExplodeShape(x,y)		
Function ParticlesManage()
Function ParticlesDraw()
Function DestroySquare(tx,ty,tempx,tempy)
Function InstructionsScreen(BlankAtEnd)
Function InstructionsDrawMain()	
Function DrawTickBox()
Function InstructionsDraw()		
Function LevelSelectScreen()	
Function LevelSelectDrawMain()	
Function DrawLevels(UpdateBuffers)
Function DrawLevel(l%)
Function GetLevelX%(l)
Function GetLevelY%(l)
Function DoMouseOverLevel(MakeSound)
Function LevelSelectDraw()		
Function SnowFlakesOn()
Function SnowFlakesManage()
Function SnowFlakesDraw(BB)
Function SnowFlakesOff()
Function LoadSprites()
Function SpriteAssignMouseOverImage(s.sprite, TheImage%)
Function SpriteCalcAM(s.Sprite, background)
Function SpriteMouseOver(s.Sprite)
Function SpriteMouseOverNoSound(s.Sprite)
Function SpriteMouseOverMain(s.Sprite, Sound%)
Function SpriteDrawOnAll(s.Sprite)
Function LevelSelectSetCoords(co.LSCoords)
Function LevelsArrayRead()
Function SetupHighScore()
Function GameHighScore()				
Function PortalSplash()
Function CreateBitmapFontTextAlpha(bf.BitmapFont, bfam.Bitmapfont, x, y, t$, Background%)
Function CreateBitmapFontTextWrapAlpha(bf.BitmapFont, bfam.Bitmapfont, x, y, width, linegap%, t$, centre%, Background%)
Function UpdateProfile()
Function UpdateProfileFlags()
Function LoadProfileFlags()
Function ProfileGameOver()
Function LeafYesNo(Message$)
Function SkipToLevel()
Function MenuSetLeafThinXY(m.Menu)
Function WaxArrayClear()
Function WaxDelete(i)
Function WaxCreate()		
Function WaxManage()
Function WaxDraw()
Function WaxReposition()
Function WaxGone(i)		
Function CandleGetMax()
Function CandleGetHeight#(max%)
Function GetCandleBaseStart%()
Function CreditsScreen()
Function ScoreSpriteCreate.scoresprite(x,y,matches%)	
Function ScoreSpriteDelete(p.scoresprite)
Function DeleteAllScoreSprites()
Function ScoreSpritesManage()	
Function ScoreSpritesDraw()
Function GridOutline()
Function GameCleanUp()
Function DovesOn()
Function DoveCreate.Dove()
Function DovesOff()
Function DovesManage()
Function DovesDraw()
Function IceAnimManage()
Function IceAnimDraw(d.dirtyrects)
Function RabbitInit()
Function RabbitManage()			
Function RabbitPickAnim()
Function TipMakeImage(TheTip$, Error%)
Function TipManage()
Function TipDraw(d.dirtyrects)
Function MouseOverTip()	
Function WarningTip%(TheTip$)
Function TipFlagReset()
Function PossBonusAdd(bonus%)


Holy Cow Badman!

best of luck!

GetLevelNameX%()


Whatsat do? :P

> Lots of work ahead...

And by the initial response, lots of forum typing :)

> Function DovesOn()
> Function DovesOff()

Why not ToggleDoves() ?

Also you can return both X and Y instead of having a function for each parameter. For example if you were returning a vector with direction would you want to have 6 functions? :)

I want to create some DIRTYRECTS!

Man, thank goodness for OOP!


Man, thank goodness for OOP!



*choke*

GetLevelNameX%()
returns the calculated X coordinate (on-screen) of the start of the level name which is printed for the player to read.

Also you can return both X and Y instead of having a function for each parameter
Not in Blitz Plus (no VAR keyword) without making a TPoint type and returning that which really wasn't needed in many cases. Certainly for a vector I'd return a type, no worries :-)

Could've made a ToggleDoves except it seemed cleared (and safer) in the code structure to call DovesOn at the top and DovesOff at the bottom :-p

Indiepath: Yeah most of those functions would be Type Methods, it was a real backwards step having no OOP for me.

yeah... OOP will save you a lot of work here...

good luck... and happy typing :)

--Mike

hmm wish I was as cvlver as yu

Ruz: Your website doesn't work...