StendhalRefactoring: Difference between revisions
imported>MiguelAngelBlanchLardin No edit summary |
imported>MiguelAngelBlanchLardin No edit summary |
(No difference)
| |
Revision as of 12:50, 24 October 2005
Items
List
We have the next items structure:
Shields
- Wooden shield
- Studded shield
- Metal Plate shield
- Copper shield
Swords
- Dagger
- Sword
- Long sword
- Broadsword
Armors
- Leather armor
- Studded Leather armor
- Plate Mail armor
- Copper Plate armor
Boots
- Sandals
- Leather
Helmet
- Leather helmet
- Studded helmet
- Chain Mail helmet
- Viking helmet
Leg Armour
- Leather Leg Armour
- Studded Leather Leg Armour
- Chain Mail Leg Armour
Corpse
Money
Book
Food
- Meat
- Cheese
- Bread
Properties
We have several common attributes for all the items. Mainly:
- Type
- Class
- Subclass
And some attributes that objects may or many not have:
- Attack
- Defense
- Quantity
Extra information
Additionally items should explain:
- What slots can they be equipped
- tiled id
Creatures
List
Actions
- Move
- Stop
- Chat
- Tell
- Outfit
- Attack
- Use
- Equip
- Drop
- Own ( a sheep )
Events
Creatures can recieve the next list of events:
boolean onAttack(target, weapon)
called when attacking a target with the given weapon.
boolean onAttacked(attacker, weapon)
called when attacked by someone with a given weapon.
void onStopAttack(target)
called when we stop attacking target
void onStopAttacked(target)
called when target stops attacking us
boolean onDamage(type, amount)
called when entity is damaged with the damage type (physical, fire, poison, magical, ... ) and the amount of damage done.
boolean onKilled(attacker, weapon)
called when attacked killed us with the given weapon
boolean onKill(target)
called when entity kills target
boolean onMove(x,y)
called when entity moves to x,y ( before moving in fact )
boolean onCollide(x,y)
called when entity collide at position x,y
boolean onCollideWith(target)
called when entity collide with another entity
boolean onEquip(item, slot)
called when entity equips item on the given slot
boolean onEquipped(source, slot)
called when entity is equipped on the source entity and in the given slot
boolean onDrop(item, slot)
called when entity drops item from the given slot to floor
boolean onDropped(source, x, y)
called when entity is dropped by source to floor at position x,y
void onChat(source, text)
called when someone speaks near entity or write to entity
boolean onUse(item)
called when entity use item
boolean onUseWith(base, item)
called when entity use item on base item
boolean onUsed(source)
called when entity is used by source
boolean onUsedWith(source, base)
called when entity is used by source on base item
boolean onStop()
called when entity stops moving, attacking, etc...