#include <chunks.h>
Inheritance diagram for Chunk_cache:


Public Member Functions | |
| int | is_blocked_fast (int tx, int ty, int lift) |
Private Member Functions | |
| Chunk_cache () | |
| ~Chunk_cache () | |
| int | get_num_eggs () |
| void | set_blocked (int startx, int starty, int endx, int endy, int lift, int ztiles, bool set) |
| void | update_object (Map_chunk *chunk, Game_object *obj, bool add) |
| void | set_egged (Egg_object *egg, Rectangle &tiles, bool add) |
| void | update_egg (Map_chunk *chunk, Egg_object *egg, bool add) |
| void | setup (Map_chunk *chunk) |
| int | get_highest_blocked (int lift, unsigned long tflags) |
| int | get_highest_blocked (int lift, int tx, int ty) |
| int | get_lowest_blocked (int lift, unsigned long tflags) |
| int | get_lowest_blocked (int lift, int tx, int ty) |
| int | is_blocked (int height, int lift, int tx, int ty, int &new_lift, const int move_flags, int max_drop=1, int max_rise=-1) |
| void | activate_eggs (Game_object *obj, Map_chunk *chunk, int tx, int ty, int tz, int from_tx, int from_ty, unsigned short eggbits, bool now) |
| void | activate_eggs (Game_object *obj, Map_chunk *chunk, int tx, int ty, int tz, int from_tx, int from_ty, bool now) |
| Game_object * | find_door (Tile_coord t) |
Private Attributes | |
| Map_chunk * | obj_list |
| unsigned long | blocked [256] |
| Egg_vector | egg_objects |
| unsigned short | eggs [256] |
| Game_object_vector | doors |
Friends | |
| class | Map_chunk |
Definition at line 49 of file chunks.h.
| int Chunk_cache::get_num_eggs | ( | ) | [inline, private] |
| void Chunk_cache::set_blocked | ( | int | startx, | |
| int | starty, | |||
| int | endx, | |||
| int | endy, | |||
| int | lift, | |||
| int | ztiles, | |||
| bool | set | |||
| ) | [private] |
Definition at line 157 of file chunks.cc.
References Clear_blocked_tile(), and Set_blocked_tile().
Referenced by Map_chunk::set_blocked().
Here is the call graph for this function:

| void Chunk_cache::update_object | ( | Map_chunk * | chunk, | |
| Game_object * | obj, | |||
| bool | add | |||
| ) | [private] |
Definition at line 183 of file chunks.cc.
References Clear_blocked_tile(), Ucscript::frame, Chunk_intersect_iterator::get_next(), Rectangle::h, Exult_server::info, Exult_server::obj, Set_blocked_tile(), Rectangle::w, Rectangle::x, and Rectangle::y.
Here is the call graph for this function:

| void Chunk_cache::set_egged | ( | Egg_object * | egg, | |
| Rectangle & | tiles, | |||
| bool | add | |||
| ) | [private] |
Definition at line 230 of file chunks.cc.
References c_tiles_per_chunk, Ucscript::egg, Rectangle::h, Rectangle::w, Rectangle::x, and Rectangle::y.
Referenced by Map_chunk::set_egged().
| void Chunk_cache::update_egg | ( | Map_chunk * | chunk, | |
| Egg_object * | egg, | |||
| bool | add | |||
| ) | [private] |
Definition at line 278 of file chunks.cc.
References Ucscript::egg, Chunk_intersect_iterator::get_next(), Rectangle::h, Rectangle::w, Rectangle::x, and Rectangle::y.
Here is the call graph for this function:

| void Chunk_cache::setup | ( | Map_chunk * | chunk | ) | [private] |
Definition at line 323 of file chunks.cc.
References Map_chunk::get_objects(), and Exult_server::obj.
Referenced by Map_chunk::need_cache().
Here is the call graph for this function:

| int Chunk_cache::get_highest_blocked | ( | int | lift, | |
| unsigned long | tflags | |||
| ) | [inline, private] |
| int Chunk_cache::get_highest_blocked | ( | int | lift, | |
| int | tx, | |||
| int | ty | |||
| ) | [private] |
| int Chunk_cache::get_lowest_blocked | ( | int | lift, | |
| unsigned long | tflags | |||
| ) | [inline, private] |
| int Chunk_cache::get_lowest_blocked | ( | int | lift, | |
| int | tx, | |||
| int | ty | |||
| ) | [private] |
| int Chunk_cache::is_blocked | ( | int | height, | |
| int | lift, | |||
| int | tx, | |||
| int | ty, | |||
| int & | new_lift, | |||
| const int | move_flags, | |||
| int | max_drop = 1, |
|||
| int | max_rise = -1 | |||
| ) | [private] |
Definition at line 439 of file chunks.cc.
References c_tiles_per_chunk, Check_terrain(), MOVE_ETHEREAL, MOVE_FLY, MOVE_MAPEDIT, MOVE_NODROP, MOVE_SWIM, and MOVE_WALK.
Referenced by Map_chunk::is_blocked().
Here is the call graph for this function:

| void Chunk_cache::activate_eggs | ( | Game_object * | obj, | |
| Map_chunk * | chunk, | |||
| int | tx, | |||
| int | ty, | |||
| int | tz, | |||
| int | from_tx, | |||
| int | from_ty, | |||
| unsigned short | eggbits, | |||
| bool | now | |||
| ) | [private] |
Definition at line 549 of file chunks.cc.
References Ucscript::egg, Map_chunk::get_cache(), and Exult_server::obj.
Referenced by Map_chunk::activate_eggs(), and activate_eggs().
Here is the call graph for this function:

| void Chunk_cache::activate_eggs | ( | Game_object * | obj, | |
| Map_chunk * | chunk, | |||
| int | tx, | |||
| int | ty, | |||
| int | tz, | |||
| int | from_tx, | |||
| int | from_ty, | |||
| bool | now | |||
| ) | [inline, private] |
Definition at line 108 of file chunks.h.
References activate_eggs(), c_tiles_per_chunk, eggs, and Exult_server::obj.
Here is the call graph for this function:

| Game_object * Chunk_cache::find_door | ( | Tile_coord | t | ) | [private] |
| int Chunk_cache::is_blocked_fast | ( | int | tx, | |
| int | ty, | |||
| int | lift | |||
| ) | [inline] |
Map_chunk* Chunk_cache::obj_list [private] |
unsigned long Chunk_cache::blocked[256] [private] |
Egg_vector Chunk_cache::egg_objects [private] |
unsigned short Chunk_cache::eggs[256] [private] |
Game_object_vector Chunk_cache::doors [private] |
1.5.1