You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
bomberclone/TechDoc.txt

133 lines
3.2 KiB

This file will hold some Details about the Game.
A list of files and what every file is used for:
field.c:
selecting a tileset
loading maps
generating maps
drawing the field
bomb.c:
drawing bombs
drawing explosions
calculating and checking the explosions
player.c:
drawing the player
moving the player
*calculating the new position of the players
checking for powerups
chat.c:
drawing chatbox
game.c:
the whole gameloop (multi and singleplayer)
single.c:
creating a single game
*generating ai players
*moving the ai players
font.c:
drawing text on the screen
network.c:
network loop
- keeping ther network alife, like sending ping, checking for
timeouts.
- doing the dynamic change of the send_pkg option
- this function will take care about all incomming network packets.
network init
network shutdown
update the clients for a new game
send to all players
- playerdata
- playermoves
- bombdata
- fielddata
- playerlist
- chat messages
- playerillness
delete a network player from a game
fills in the sockaddr from all the players
clean everything for a new network game
netmenu.c:
network menu
join a game
host a game
network options
packets.c:
everything what have to do with the network packet,
all send_* and all do_* function are defined in here.
send_packetname, do_packetname
do_pkg
------
will check the packet for wrong data network type
illegal packets, will delete the packet if we have got it already
do automatic pingreply or send the pkgack packet back.
send_pkg
--------
if the PKGF_ACKREQ flag is set it will cache the packet and check it if
it's reched the other side and if we have got the ACKPKG back.
holds an incoming index table of the last 256 (PKG_IN_INDEX_NUM) packets
so if one reches double in a certain time it will be ignored.
pkgcache.c:
gives a pointer to a outgoing packet
add a outgoing packet
- function is only called from send_pkg
- only packet with PKGF_ackreq flag will cached
deletes a packet
len of an outgoing packet
resend cache loop
- function only called from network_loop
will resend after a timeout time a packet.
to make sure the packet got reched on the other side.
configuration.c:
configuratio/option menu
read config
write config
change resolution menu
read program arguments
game startup init
- only called from the main function to set some variables at
programstart
gfx.c:
draw shadowed boxes
shading parts on the screen
draw background logo
draw shaded background logos
updates a list of parts from the screen
- gfx_UpdateRects (updates all rects)
- gfx_AddUpdateRects(add a rect of the screen)
gets the color of an pixel on a surface
scaling of images
load/free playergraphics
load/free game data (fonts and background)
load/free tilesets
init/shutdown game graphics
- this function will calculate the best scaling size on the screen
gamesrv.c:
communiaction with the game master server
adds a game to the master server
deletes a game from the masterserver
sends chat information to the master server
server selection menu
udp.c:
send messages
get messages
dns names
start/stop udp server