@ Lacotemale
fsimc has some atmospheric music now thanks to you
@ tzoli
More graphics (railway rack / stations, seaport, marina, ferry dock, airport, Crossings: road/rail, road/river, rail / river)
.png :
zipped .bmp :
It's comming along very well now tzoli.
The front end was a good idea (credts, start, etc..). This would be good place to add your help manual in the future. I really like the info addition and the comments of the people. I was chuffed to learn that my people liked me as their mayor
I hope you don't mind and think I'm trying to tell you how to make your game by making all these suggestions. I just like these kinds of games and would like to help out with suggestions.
GENERAL & DE-BUGGINGI have noticed some things to improve for future versions:-
1. Like you said the repeat keys do get stuck, goes on crazy scroll :lol It's unfortuate because it works really well when it behaves itself. I beleive their are several solutions on the forum (haven't had a look).
[EDIT] Oh! A possible solutiion. Might be easier to do a 'any key down' event for 'movin' and then use switch & GetKetState() to test which key has been pressed. You will have less events to worry about (just this one) and it will be easier to debug navigating around the map.
2. The X and Y text on the right of map view does not always update as you scroll the view.
3. People comments. Some residents say they are not close to a road. I think you should change this so that people can leave more than 1 tile away from a road. In future it will help you because players will use less roads and it will be easier for you the manage more advvanced features like travel stats (statistics like congestion, pollution, less roads less things to code & do. Of course, animating/simulating traffic will also be easier for later on).
4. Corner roads. Think the corner roads on tile set I gave looks better because the road marking are not shrape like yours but follow th curve of the road. Worth replacing with curved roadmarks from tile set?
MENU SUGGESTIONSRecommendations for menu options (don't know what you'll call them in the end but here are some examples):-
* ZONING -> Residential, Marketing, Industrial
* CIVIC BUILDINGS -> Town Hall, Statues
* LEISURE FACILITIES -> Trees, Park, Plaza, Baseball Court, Marina, etc...
* EDUCATION FACILITIES -> Nursery, School, College, Library, University, etc...
* HEALTH FACILITIES -> Dental Surgery, Health Clinic, Hospital,etc...
* EMERGENCY SERVICES -> Police Station, Fires station
* TRANSPORT FACILITIES -> Road, railway track, ferry route, bridge, Bus stop, railway station, ferry dock etc...
* WATER FACILITES -> Water Pipes, Water Pumps, etc..
* POWER FACILITES -> Power lines, Electric plant, Solar Plant, etc...
Can't think of anymore ... no ... mind gone blank :lol
CODING SUGGESTIONSUsing switch()?I've noticed that your using a lot of nested if()..else() statements. You would make things run faster and more efficiently if you use the switch() statement. This is because the computer will have to do extra work each time it comes across an 'if()...else()' where as with the switch() it only needs to do it once.
Used the switch() for the following alaphely codes. You can see that it will also make it easier for you to make new addition. Just add another case for another cloneindex. The "break;" is important because prevents running other cases when it's done the case it's on. The "default: your code; break;" is super useful when you need to add a safety net or default values. Say if none of the cases get matched than switch() will run the default part. For the alaphely left it blank. It's good practice to add 'default' in a switch() statements even when your not using it (helps to catch stuff with accidental or error prone values).
fsimc works fine when I added these changes. If you like it. I recommand you change the other codes bits too.
EVENT: alaphely->Draw Actor- Code: Select all
if(menu==1)
{
switch(cloneindex)
{
case 0: ChangeAnimation("Event Actor", "ut2", FORWARD); break;
case 1: ChangeAnimation("Event Actor", "househely", FORWARD); break;
case 2: ChangeAnimation("Event Actor", "markethely", FORWARD); break;
case 3: ChangeAnimation("Event Actor", "iparhely", FORWARD); break;
case 4: ChangeAnimation("Event Actor", "pohiv", FORWARD); break;
default: break; // do nothing
}
}
EVENT: alaphely->mouse button down (left)- Code: Select all
if(menu==1)
{
switch(cloneindex)
{
case 0: build=2; break;
case 1: build=3; break;
case 2: build=4; break;
case 3: build=8; break;
case 4: build=5; break;
default: break; // do nothing
}
}
Using structs()?Think structs would be really useful for alot of the things your doing here. It will make your coding life a lot easier. I'm still learning about them. Might be good to have a look.
Currently working on more tiles...
I have a lot more to say but I've forgotten what it is :lol