X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fmapdef%2Fmapdef.txt;h=8807ea7af4908ce0732550961ad6a6aef6836969;hb=dfa773bc700e78a596852c0aca924178b5f707a8;hp=fb2af9457a012472c79679e2d177b31a7a72a901;hpb=698e6072410d293561318b230561d5f87fa705cc;p=d2df-sdl.git diff --git a/src/mapdef/mapdef.txt b/src/mapdef/mapdef.txt index fb2af94..8807ea7 100644 --- a/src/mapdef/mapdef.txt +++ b/src/mapdef/mapdef.txt @@ -19,12 +19,15 @@ //////////////////////////////////////////////////////////////////////////////// // main blocks "map" size 452 bytes header binblock 7 { - "name" type char[32] offset 0 writedefault; - "author" type char[32] offset 32 default "" writedefault; - "description" type char[256] offset 64 default "" writedefault; - "music" type char[64] offset 320 default 'Standart.wad:D2DMUS\ПРОСТОТА' writedefault; - "sky" type char[64] offset 384 default 'Standart.wad:D2DSKY\RSKY1' writedefault; + "name" type char[32] offset 0 writedefault tip "map name"; + "author" type char[32] offset 32 default "" writedefault tip "map author"; + "description" type char[256] offset 64 default "" writedefault tip "map description"; + "music" type char[64] offset 320 default 'Standart.wad:D2DMUS\ПРОСТОТА' writedefault tip "music resource"; + "sky" type char[64] offset 384 default 'Standart.wad:D2DSKY\RSKY1' writedefault tip "sky resource"; "size" type size offset 448 as wh writedefault; + // not in binary + // temporary, for lighting experiments + "light_ambient" type color default (0 0 0 255) tip "ambient light for the whole level"; } "texture" size 65 bytes binblock 1 { @@ -79,6 +82,11 @@ "keys" type ubyte offset 19 bitset Key default KEY_NONE; //WARNING: "trigdata" MUST be defined before "type", and "type" MUST be named "type" (for now, can be changed later) "triggerdata" type trigdata[128] offset 20; // the only special nested structure + //DO NOT USE! experimental feature! will be removed! + "exoma_init" type string default "" tip "will be called on trigger creation"; + "exoma_think" type string default "" tip "will be called on each think step"; + "exoma_check" type string default "" tip "will be called before activation"; + "exoma_action" type string default "" tip "will be called on activation"; } @@ -96,6 +104,7 @@ enum DirType { DIR_LEFT, // 0 DIR_RIGHT, // 1 DIR_SOMETHING2, // 2 + DIR_REVERSE, // 3 } // triggers @@ -167,6 +176,7 @@ enum EffectAction { EFFECT_FIRE, // 3 } +//WARNING! max allowed items types is 127 enum Item { ITEM_NONE, // 0 ITEM_MEDKIT_SMALL, // 1 @@ -280,6 +290,7 @@ enum TriggerShot { TRIGGER_SHOT_BFG, // 12 TRIGGER_SHOT_EXPL, // 13 TRIGGER_SHOT_BFGEXPL, // 14 + TRIGGER_SHOT_FLAME, // 15 // TRIGGER_SHOT_MAX = MAX, } @@ -367,6 +378,20 @@ bitset Key { KEY_BLUETEAM, // 16 } +enum HitType { + HIT_SOME, // 0 + HIT_ROCKET, // 1 + HIT_BFG, // 2 + HIT_TRAP, // 3 + HIT_FALL, // 4 + HIT_WATER, // 5 + HIT_ACID, // 6 + HIT_ELECTRO, // 7 + HIT_FLAME, // 8 + HIT_SELF, // 9 + HIT_DISCON, // 10 +} + //////////////////////////////////////////////////////////////////////////////// // various triggers @@ -477,6 +502,7 @@ TriggerData for TRIGGER_MESSAGE { TriggerData for TRIGGER_DAMAGE { "amount" type ushort offset 0 writedefault; "interval" type ushort offset 2 writedefault; + "kind" type ubyte offset 4 enum HitType default HIT_SOME writedefault; } TriggerData for TRIGGER_HEALTH { @@ -490,7 +516,7 @@ TriggerData for TRIGGER_SHOT { "position" type point offset 0 as txy writedefault; "type" alias shotType type ubyte offset 8 enum TriggerShot writedefault; "target" alias shotTarget type ubyte offset 9 enum TriggerShotTarget writedefault; - "quiet" type negbool offset 10; // negbool! + "sound" alias shotSound type negbool offset 10; // negbool! "aim" type byte offset 11 enum TriggerShotAim default TRIGGER_SHOT_AIM_DEFAULT; "panelid" type int offset 12 panel default null writedefault; "sight" type ushort offset 16;