View Single Post
  #2  
Old 02-05-2010, 05:57 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

Take a look at the blocked_spells table in the database:

Code:
mysql> describe blocked_spells;
+-------------+-----------------------+------+-----+---------+----------------+
| Field       | Type                  | Null | Key | Default | Extra          |
+-------------+-----------------------+------+-----+---------+----------------+
| id          | int(11)               | NO   | PRI | NULL    | auto_increment |
| spellid     | mediumint(8) unsigned | NO   |     | 0       |                |
| type        | tinyint(4)            | NO   |     | 0       |                |
| zoneid      | int(4)                | NO   |     | 0       |                |
| x           | float                 | NO   |     | 0       |                |
| y           | float                 | NO   |     | 0       |                |
| z           | float                 | NO   |     | 0       |                |
| x_diff      | float                 | NO   |     | 0       |                |
| y_diff      | float                 | NO   |     | 0       |                |
| z_diff      | float                 | NO   |     | 0       |                |
| message     | varchar(255)          | NO   |     |         |                |
| description | varchar(255)          | NO   |     |         |                |
+-------------+-----------------------+------+-----+---------+----------------+
I've never actually messed with it, but as I undertand it, it will block spell spellid (or all spells of type 'type' in zone zoneid in the cube centered at x,y,z with dimensions +/- x_diff, y_diff, z_diff from being cast and send the client 'message' if the spell is blocked.

To block a spell in the whole zone, set x,y,z to 0 and x_diff,y_diff,z_diff to a large number (10000 is typically what is used for the current entries in that table).

Browsing the entries in the table should give you an idea of what to do.

EDIT: Looking at the source, it appears if 'type' is 1, then the spell is blocked zonewide, or if 'type' is 2, then it is blocked only within the cube specified by x,y,z,x_diff,y_diff,z_diff.

Last edited by Derision; 02-05-2010 at 06:07 PM..
Reply With Quote