1 | /* |
1 | /* |
2 | * static char *rcsid_build_map = |
2 | * static char *rcsid_build_map = |
3 | * "$Id: build_map.C,v 1.3 2006/09/03 00:18:42 root Exp $"; |
3 | * "$Id: build_map.C,v 1.4 2006/09/08 16:53:57 root Exp $"; |
4 | */ |
4 | */ |
5 | /* |
5 | /* |
6 | CrossFire, A Multiplayer game for X-windows |
6 | CrossFire, A Multiplayer game for X-windows |
7 | |
7 | |
8 | Copyright (C) 2001 Mark Wedel & Crossfire Development Team |
8 | Copyright (C) 2001 Mark Wedel & Crossfire Development Team |
… | |
… | |
228 | int connect; |
228 | int connect; |
229 | object* wall; |
229 | object* wall; |
230 | char archetype[ MAX_BUF ]; |
230 | char archetype[ MAX_BUF ]; |
231 | char* underscore; |
231 | char* underscore; |
232 | uint32 old_flags[ 4 ]; |
232 | uint32 old_flags[ 4 ]; |
233 | struct archt* new_arch; |
233 | struct archetype* new_arch; |
234 | int flag; |
234 | int flag; |
235 | |
235 | |
236 | /* First, find the wall on that spot */ |
236 | /* First, find the wall on that spot */ |
237 | wall = get_wall( map, x, y ); |
237 | wall = get_wall( map, x, y ); |
238 | if ( !wall ) |
238 | if ( !wall ) |
… | |
… | |
349 | */ |
349 | */ |
350 | void apply_builder_floor(object* pl, object* material, short x, short y ) |
350 | void apply_builder_floor(object* pl, object* material, short x, short y ) |
351 | { |
351 | { |
352 | object* tmp, *above; |
352 | object* tmp, *above; |
353 | object* above_floor; /* Item above floor, if any */ |
353 | object* above_floor; /* Item above floor, if any */ |
354 | struct archt* new_floor; |
354 | struct archetype* new_floor; |
355 | struct archt* new_wall; |
355 | struct archetype* new_wall; |
356 | int i, xt, yt, floor_removed; |
356 | int i, xt, yt, floor_removed; |
357 | char message[ MAX_BUF ]; |
357 | char message[ MAX_BUF ]; |
358 | |
358 | |
359 | sprintf( message, "You change the floor to better suit your tastes." ); |
359 | sprintf( message, "You change the floor to better suit your tastes." ); |
360 | |
360 | |
… | |
… | |
468 | void apply_builder_wall( object* pl, object* material, short x, short y ) |
468 | void apply_builder_wall( object* pl, object* material, short x, short y ) |
469 | { |
469 | { |
470 | object* current_wall; |
470 | object* current_wall; |
471 | object* tmp; |
471 | object* tmp; |
472 | int xt, yt; |
472 | int xt, yt; |
473 | struct archt* new_wall; |
473 | struct archetype* new_wall; |
474 | char message[ MAX_BUF ]; |
474 | char message[ MAX_BUF ]; |
475 | |
475 | |
476 | remove_marking_runes( pl->map, x, y ); |
476 | remove_marking_runes( pl->map, x, y ); |
477 | |
477 | |
478 | /* Grab existing wall, if any */ |
478 | /* Grab existing wall, if any */ |
… | |
… | |
539 | * Item is inserted above the floor, unless Str == 1 (only for detectors i guess) |
539 | * Item is inserted above the floor, unless Str == 1 (only for detectors i guess) |
540 | */ |
540 | */ |
541 | void apply_builder_item( object* pl, object* item, short x, short y ) |
541 | void apply_builder_item( object* pl, object* item, short x, short y ) |
542 | { |
542 | { |
543 | object* tmp; |
543 | object* tmp; |
544 | struct archt* arch; |
544 | struct archetype* arch; |
545 | int insert_flag; |
545 | int insert_flag; |
546 | object* floor; |
546 | object* floor; |
547 | object* con_rune; |
547 | object* con_rune; |
548 | int connected; |
548 | int connected; |
549 | |
549 | |