… | |
… | |
3372 | $IGNORE_LIST{system_object} |
3372 | $IGNORE_LIST{system_object} |
3373 | ], |
3373 | ], |
3374 | name => 'Inventory Checker', |
3374 | name => 'Inventory Checker', |
3375 | use => 'Putting a check_inventory space in front of a gate (one below) and one on the opposite side works reasonably well as a control mechanism. Unlike the key/door-combo, this one works infinite since it is independant from map reset. Use it to put a "structure" into your maps: Player must solve area A to gain access to area B. This concept can be found in nearly every RPG - simple but effective.' |
3375 | use => 'Putting a check_inventory space in front of a gate (one below) and one on the opposite side works reasonably well as a control mechanism. Unlike the key/door-combo, this one works infinite since it is independant from map reset. Use it to put a "structure" into your maps: Player must solve area A to gain access to area B. This concept can be found in nearly every RPG - simple but effective.' |
3376 | }, |
3376 | }, |
|
|
3377 | 'Item Match' => { |
|
|
3378 | attr => [ |
|
|
3379 | [ |
|
|
3380 | 'no_pick', |
|
|
3381 | { |
|
|
3382 | type => 'fixed', |
|
|
3383 | value => 1 |
|
|
3384 | } |
|
|
3385 | ], |
|
|
3386 | [ |
|
|
3387 | 'slaying', |
|
|
3388 | { |
|
|
3389 | desc => 'If the string starts with \'match \', then it is interpreted as a match expression (e.g. \'match type=POTION\', or \'match type=SPELL in applied type=CONTAINER in inv in originator\'). For details, see http://pod.tst.eu/http://cvs.schmorp.de/deliantra/server/lib/cf/match.pm Optionally you can leave out the "match " prefix.', |
|
|
3390 | name => 'match expression', |
|
|
3391 | type => 'string' |
|
|
3392 | } |
|
|
3393 | ], |
|
|
3394 | [ |
|
|
3395 | 'connected', |
|
|
3396 | { |
|
|
3397 | desc => 'When the match is triggered, all objects with the same connection value get activated.', |
|
|
3398 | name => 'connection', |
|
|
3399 | type => 'string' |
|
|
3400 | } |
|
|
3401 | ], |
|
|
3402 | [ |
|
|
3403 | 'move_on', |
|
|
3404 | { |
|
|
3405 | desc => 'Which movement types automatically (as opposed to manually) activate this object.', |
|
|
3406 | name => 'movement type', |
|
|
3407 | type => 'movement_type' |
|
|
3408 | } |
|
|
3409 | ], |
|
|
3410 | [ |
|
|
3411 | 'move_off', |
|
|
3412 | { |
|
|
3413 | desc => 'Which movement types deactivate this object (e.g. button).', |
|
|
3414 | name => 'movement type', |
|
|
3415 | type => 'movement_type' |
|
|
3416 | } |
|
|
3417 | ], |
|
|
3418 | [ |
|
|
3419 | 'move_block', |
|
|
3420 | { |
|
|
3421 | desc => 'Objects using these movement types cannot move over this space.', |
|
|
3422 | name => 'blocked movement', |
|
|
3423 | type => 'movement_type' |
|
|
3424 | } |
|
|
3425 | ] |
|
|
3426 | ], |
|
|
3427 | desc => 'Match objects use the deliantra matching language (http://pod.tst.eu/http://cvs.schmorp.de/deliantra/server/lib/cf/match.pm) to match items on the same mapspace (if move_on/off are unset) or items trying to enter (if move_blocked is set). If a connected value is given, then it is triggered if the first object matching the expression is put on it, and the last is removed.', |
|
|
3428 | ignore => [ |
|
|
3429 | $IGNORE_LIST{non_pickable} |
|
|
3430 | ], |
|
|
3431 | name => 'Item Match', |
|
|
3432 | use => 'If you want to trigger something else (e.g. a gate) when an item is above this object, use the move_on/move_off settings. If you want to keep something from entering if it has (or lacks) a specific item, use the move_blocked setting.' |
|
|
3433 | }, |
3377 | 'Item Transformer' => { |
3434 | 'Item Transformer' => { |
3378 | attr => [ |
3435 | attr => [ |
3379 | [ |
3436 | [ |
3380 | 'food', |
3437 | 'food', |
3381 | { |
3438 | { |
… | |
… | |
3912 | name => 'script', |
3969 | name => 'script', |
3913 | type => 'text' |
3970 | type => 'text' |
3914 | } |
3971 | } |
3915 | ] |
3972 | ] |
3916 | ], |
3973 | ], |
3917 | desc => 'The map script object is a very special object that can react to connected events and executes a perl script.', |
3974 | desc => 'The map script object is a very special object that can react to connected events and executes a perl script in the msg slot.', |
3918 | ignore => [ |
3975 | ignore => [ |
3919 | $IGNORE_LIST{system_object} |
3976 | $IGNORE_LIST{system_object} |
3920 | ], |
3977 | ], |
3921 | name => 'Map Script', |
3978 | name => 'Map Script', |
3922 | use => 'The perl script gets passed an $activator object and can use the set/get/find/timer functions to react to/trigger other objects.' |
3979 | use => 'The perl script gets passed a $state value and $activator, $self, $originator objects and can use the set/get/find/timer functions to react to/trigger other objects. See http://pod.tst.eu/http://cvs.schmorp.de/deliantra/server/lib/cf/mapscript.pm for details.' |
3923 | }, |
3980 | }, |
3924 | Marker => { |
3981 | Marker => { |
3925 | attr => [ |
3982 | attr => [ |
3926 | [ |
3983 | [ |
3927 | 'no_pick', |
3984 | 'no_pick', |
… | |
… | |
8005 | 14 => $TYPE{'Shooting Weapon'}, |
8062 | 14 => $TYPE{'Shooting Weapon'}, |
8006 | 15 => $TYPE{Weapon}, |
8063 | 15 => $TYPE{Weapon}, |
8007 | 16 => $TYPE{'Brestplate Armour'}, |
8064 | 16 => $TYPE{'Brestplate Armour'}, |
8008 | 17 => $TYPE{Pedestal}, |
8065 | 17 => $TYPE{Pedestal}, |
8009 | 18 => $TYPE{Altar}, |
8066 | 18 => $TYPE{Altar}, |
|
|
8067 | 19 => $TYPE{'Item Match'}, |
8010 | 20 => $TYPE{'Locked Door'}, |
8068 | 20 => $TYPE{'Locked Door'}, |
8011 | 21 => $TYPE{'Special Key'}, |
8069 | 21 => $TYPE{'Special Key'}, |
8012 | 23 => $TYPE{Door}, |
8070 | 23 => $TYPE{Door}, |
8013 | 24 => $TYPE{Key}, |
8071 | 24 => $TYPE{Key}, |
8014 | 26 => $TYPE{'Timed Gate'}, |
8072 | 26 => $TYPE{'Timed Gate'}, |