happymonster
|
|
« Reply #680 on: November 16, 2012, 04:04:35 PM » |
|
Wouldn't it be better to separate out the title screen and ingame logic/rendering main loop into different functions? At the moment there seems a lot of lines in that ingame loop.
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #681 on: November 16, 2012, 04:07:11 PM » |
|
I have a question: If I wanted to abstract the data type internally from one source code file to another in C but be able to deal with arrays or maps of an object type, is this the best approach (once I've located a void pointer for the object in the array or map)? char *Return_object_name( void **object ) { obj_t *obj = (struct obj_t *)object; return obj->name; }
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #682 on: November 16, 2012, 04:21:10 PM » |
|
Yeh you're probably right, my main() was around 1000 lines before and now is around 200, so it's a dramatic improvement on what it was. Eventually the title screen and menu stuff will be hidden away in a class so that'll clean it up further. Still .. the big comments kind of act as code 'segmenters' for me, which is one way of modularising the code I suppose. I have a question: If I wanted to abstract the data type internally from one source code file to another in C but be able to deal with arrays or maps of an object type, is this the best approach (once I've located a void pointer for the object in the array or map)? char *Return_object_name( void **object ) { obj_t *obj = (struct obj_t *)object; return obj->name; }
this article on OO programming in C may help, but I don't know (except object should be a void* right?).
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #683 on: November 17, 2012, 02:20:07 AM » |
|
Sorry, yes I meant to type void *
Thanks for the link..!
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #684 on: November 18, 2012, 07:23:43 AM » |
|
Actually, I have spent some time this weekend encapsulating the Alpha struct using void* pointers. I'm happier with this now.
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #685 on: November 18, 2012, 03:17:26 PM » |
|
Actually, I have spent some time this weekend encapsulating the Alpha struct using void* pointers. I'm happier with this now. What's this for exactly?
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #686 on: November 21, 2012, 11:41:40 AM » |
|
Opps, I missed your reply..!
The Alpha structs are for altering alpha values of various things (cursors, UI tiles, panels, etc..)
I'm currently re-factoring more of the code to use this kind of approach where data is completely private from other areas of the code. It's slow going, but something I've never really explored, so it's really helpful for my development as a programmer.
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #687 on: November 21, 2012, 01:15:04 PM » |
|
The Alpha structs are for altering alpha values of various things (cursors, UI tiles, panels, etc..)
I'm currently re-factoring more of the code to use this kind of approach where data is completely private from other areas of the code. It's slow going, but something I've never really explored, so it's really helpful for my development as a programmer.
Oh no, I was wondering why you are removing the type info altogether. I think I'm missing the point, but forward declaration would allow you to hide the implementation still but retain the types in the function signatures. Unless you are building a more generic system that operates on typeless chunks of data? // alpha.h struct alpha; alpha* make(float val); void change(alpha* alpha, float val);
// alpha.c struct alpha { float a,b,c; };
// main.c #include "alpha.h" .. alpha* alp = make(4.0); change(alp,6);
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #688 on: November 21, 2012, 02:16:27 PM » |
|
It's a more generic system really. I'm still experimenting with different things and seeing what I like best.
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #689 on: November 21, 2012, 02:31:56 PM » |
|
yeh for sure, i really like programming and thinking about this stuff. this (void*) thing is really just the difference between enforcing your own policies and getting some flexibility, or getting the compiler to enforce them and having to have a more strict design. anyways, enough code talk, lets see some new screenies!
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #690 on: November 21, 2012, 03:16:03 PM » |
|
I wish I had some!!
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #691 on: November 22, 2012, 01:39:02 PM » |
|
Sorry this is such a boring blog! One thing that I've seen recently that is interesting is a few analysis of the new X-Com game. It's got very good reviews, yet some criticism. See the good article on Gamasutra for an example. I still haven't bought the game, and now undecided as the bits I like the most of the original, (line of sight, action points/time units, etc..) are the parts not in the new game. SpaceHero Command will keep those core features though, but will have more influences from Laser Squad I think.
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #692 on: November 22, 2012, 02:46:38 PM » |
|
Lol whatever, its a good devlog, but you need to iterate more quickly! Just jam the shit out of the code.
|
|
|
Logged
|
|
|
|
Paul Jeffries
|
|
« Reply #693 on: November 24, 2012, 12:27:51 PM » |
|
I think how much you like the new XCOM will depend a bit on where your preferences lie on the 'simulation <-> game' spectrum. It's mechanics are more simplified and abstract than the original, but the gameplay feels a lot tighter and more focused. Personally, I think that works quite well in the tactical mode (with the caveat that I'd prefer proper LOS) but I think the strategy mode is much worse than the original - the strategic options you have are pared down to the bone and it is abstracted to the point of ludicrousness. On the whole I prefer the original, crappy 90s graphics and all, but it's still a very good game and an interesting and worthy new take on the material. Also, heritage aside, it's a big-budget turn-based squad tactics game - it's worth buying purely for that fact alone.
Vaguely related question (and forgive me if this has already been covered somewhere in the last 40 pages): Will Space Hero Command have a strategic mode, or does it focus in specifically on the tactical battles?
|
|
|
Logged
|
|
|
|
Gregg Williams
|
|
« Reply #694 on: November 24, 2012, 12:41:14 PM » |
|
Some really interesting UI designs in this game, I look forward to seeing more.
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #695 on: November 24, 2012, 01:16:47 PM » |
|
Eigenbom: Paul: With the very slow pace of development & re-factoring I've only focusing on the tactical side of things. I haven't even thought about the strategic side of the game. Zenroth: Thanks!
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #696 on: November 24, 2012, 04:14:53 PM » |
|
One thing added:
Objects can now belong to a 'random group', what this means is that when added to the map the map editor will pick one tile at random out of all the ones in the set that belong to the same random group.
This is used to add pattern variation for grass / rock floor tiles at the moment.
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #697 on: November 25, 2012, 10:03:32 AM » |
|
I've now added support for animated objects! So the video panels lights now switch between red and yellow every few seconds. :D
|
|
|
Logged
|
|
|
|
happymonster
|
|
« Reply #698 on: November 25, 2012, 02:13:23 PM » |
|
Disco InfernoOk.. my Chaos inspired 4 frame fire animation hasn't worked too well. Now, how do you do a fire animation in this kind of style..?
|
|
|
Logged
|
|
|
|
eigenbom
|
|
« Reply #699 on: November 25, 2012, 02:55:27 PM » |
|
show us something!
|
|
|
Logged
|
|
|
|
|