A Proper Way To Work
BlitzMax Forums/BlitzMax Programming/A Proper Way To Work
| ||
Any One has the best idea of how to create a correct work method. I use this method Type Main_Class 'Subs Field Add:Add_Class=New Add_Class End Type Type Add_Class Method AddSomething() 'Code... End Method End Type Local TT:Main_Class=new Main_Class TT.Add() Thats how I do hirarchy more or less. any one has better way to work? |
| ||
I'd have more idea on an answer for you if I could understand what your little example was trying to accomplish? |
| ||
Maybe something like the "behaviour"-approach?Type TCharacter field behaviours:TList=CreateList() field x:float,y:float Method addBehaviour(behaviour:TBehaviour) self.behaviours.addLast(behaviour) End Method Method Update() for local behaviour:TBehaviour = eachin self.behaviours behaviour.update(self) next self.y :+1 End Method End Type Type TBehaviour Method Update(parent:object) print "standard behaviour - do nothing" End Method End Type Type TMoveLikeDrunkenBehaviour extends TBehaviour Method Update(parent:object) local character:TCharacter = TCharacter(parent) if not character then return character.x = sin(character.y) End Method End Type local char:TCharacter = new TCharacter char.addBehaviour( new TMoveLikeDrunkenBehaviour ) while not KeyHit(KEY_ESCAPE) char.update() print char.x+","+char.y wend Code is not tested, just written as a "maybe example". bye Ron |
| ||
The problem is that when im building a big project Im spliting the Project From MainType down to SubTypes Because I cant find my legs when its a single file. So My Commands Become like that Engine.Add.Data("xxx") Or Engine.Join.Info("ccc","mmm") How do people face big Projects thats my read question. How do you manage your code when you have 1000's of Functions.. |
| ||
Because I cant find my legs when its a single file. Mine are normally still dangling loosely from my arse, no matter how complex the code gets.Seriously though, I split my code into separate files and use a load of Includes at the top of my code. Each class has it's own file, except where a class is directly related to another, then I just leave them in the same file, so that all related code is kept together. A normal game, for me, generally has about 120-150 source files. The other thing is, use BLIdePlus. It pulls down the pants of MaxIDE and paddles it's arse purple. |
| ||
I split stuff in separate files which in turn are imported into the main file. Every file contains an independent type or sometimes several types if the belong somehow together. It's even best when a certain file / type can be compiled and tested completely on it's own, but that is not always the case. If projects are getting really huge it is not easy to track, I faced the situation that I wrote a function and when I wanted to put it in the right place there was already one, I just forgot. |
| ||
Thanks for the replies. Well as i see there is no easy way. Unless i could builed an IDE that is.. |