Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.

Back-to:World

...

  • An area could pacify all players (spell 39331)
  • Another area could full heal every 1 second (spell 48591)
  • Teleport player out of an area (spell 53141)
  • Factions-specific buffs, e.g. in Icecrown Citadel:
    • "Hellscream's Warsong" (spell 73822) for horde 
    • "Strength of Wrynn" (spell 73828) for alliance
  • Even region-based buffs, such as area 440 - Tanaris.

Structure

Field

Type

Attributes

Key

Null

Default

Extra

Comment

spell

mediumint(8)

unsigned

PRI

NO

0

 

 

area

mediumint(8)

unsigned

PRI

NO

0

 

 

quest_start

mediumint(8)

unsigned

PRI

NO

0

 

 

quest_end

mediumint(8)

unsigned

 

NO

0

 

 

aura_spell

mediumint(8)

signed

PRI

NO

0

 

 

racemask

mediumint(8)

unsigned

PRI

NO

0

 

 

gender

tinyint(1)

unsigned

PRI

NO

2

 

 

autocast

tinyint(1)

unsigned

 

NO

0

 

 

quest_start_status

int(11)

unsigned

 

NO

64

 

 

quest_end_status

int(11)

unsigned

 

NO

11

 

 

Description of the fields

...

16777216 (2 + 16 + 32 + 128 + 256 + 512 + 33554432) = Horde Only

33554432 (1 + 4 + 8 + 64 + 1024 + 2097152 + 16777216) = Alliance Only

...

INSERT INTO spell_area (spell, area, quest_start, quest_end, autocast, quest_start_status, quest_end_status) VALUES (92237, 257, 28725, 28727, 1, 74, 11);

 

Quest Status

Flag

Explanation

QUEST_STATUS_NONE = 0

1

Player does not have or had quest at all. He could accept it, but he did not (yet).

QUEST_STATUS_COMPLETE = 1

2

Player fulfilled objectives, but did not hand it in yet.

QUEST_STATUS_UNAVAILABLE = 2

4 (NOT USED)

(Not used)

QUEST_STATUS_INCOMPLETE = 3

8

Player did not fulfill objectives yet

QUEST_STATUS_AVAILABLE = 4

16 (NOT USED)

(Not used)

QUEST_STATUS_FAILED = 5

32

Player failed to fulfill objectives for any reason, e.g. time limit

QUEST_STATUS_REWARDED = 6

64

Player handed quest in and this is sort of a post-quest interaction


Info
titleExample for a SQL

 For a `quest_end_status` that should contain QUEST_STATUS_NONE (1), QUEST_STATUS_COMPLETE (2) and QUEST_STATUS_INCOMPLETE (8):

Bloque de código
languagesql
 UPDATE `spell_area` SET `quest_end_status`= (1|2|8) WHERE `spell`=XXXXX AND `area`=YYYY; -- equivalent to `quest_end_status`= 11


...