StendhalRefactoring: Difference between revisions

Jump to navigation Jump to search
Content deleted Content added
imported>MiguelAngelBlanchLardin
No edit summary
imported>AntumDeluge
Code: remove outdated/implemented
 
(573 intermediate revisions by 19 users not shown)
Line 1: Line 1:
{{Navigation for Stendhal Top|Contributing}}
=Items=
{{Navigation for Stendhal Contributors}}
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


This page proposes some possible, very long term, goals for Stendhal.<br>
== Properties ==
Please see also [[StendhalOpenTasks]] for shorter term open tasks.
We have several common attributes for all the items. Mainly:
* Type
* Class
* Subclass


If you are interested in any of these goals, or have other ideas, please visit [[ChatWithOtherUsersDevs|IRC at irc.libera.chat #arianne]]
And some attributes that objects may or many not have:
=RP System=
* Attack
[[StendhalRPProposal| ''Working document'' for RP System proposal]]<br>
* Defense
[[StendhalRefactoringRP| RP System proposal]]<br>
* Quantity
[[StendhalRefactoringRP#Skill_system|Skill System]]<br>
[[StendhalRefactoringRP#Melee_Combat|Combat: Melee]]<br>
[[StendhalRefactoringRP#Range_Combat|Combat: Range]]<br>
[[StendhalRefactoringRP#Magic|Magic]]<br>
[[StendhalRefactoringRP#Trading_system|Trading System]]<br>
[[StendhalRefactoringRP#Shopping_system|Shopping System]]<br>
[[StendhalRefactoringRP#Auctioning_system|Auctioning System]]<br>
[[StendhalRefactoringRP#Party_system|Party System]]<br>
[[StendhalJobs|Jobs System]]<br>


=Economy=
== Extra information ==
[[StendhalEconomy|Balancing the economy]]
Additionally items should explain:
* What slots can they be equipped


=Class System=
[[StendhalRefactoringClassBasics|Class Basics]]<br>
<br>
About the different classes <br>
[[StendhalRefactoringClassArcher|Class:Archer]]<br>
[[StendhalRefactoringClassMage|Class:Mage]]<br>
[[StendhalRefactoringClassPriest|Class:Priest]]<br>
[[StendhalRefactoringClassWarrior|Class:Warrior]]<br>
<br>
[[StendhalRefactoringClassGeneral|General Skills]]<br>



= Items =

* [[StendhalRefactoringEquipment| Weapons & Armor System]]
* [[StendhalRefactoringItemsBase| Base Implementation page]] ''outdated''
* [[StendhalRefactoringItems| Items available after refactoring, min level list]] ''outdated''


=Creatures=
=Creatures=
[[StendhalRefactoringCreatures| Creatures available after refactoring]]<br>
== Actions ==
[[StendhalRefactoringCreatures#Actions| Creatures' actions available after refactoring]]<br>
* Move
[[StendhalRefactoringCreatures#Events| Creatures' events system proposal]]<br>
* Stop
[[StendhalRefactoringCreatures#AI| Creatures' AI system proposal]]<br>
* Chat

* Tell

* Outfit
=Out of Game=
* Attack
* [[StendhalRefactoringUpdates]]
* Use

* Equip
= Code =
* Drop

* Own ( a sheep )
* Improve rendering engine by adding dirty rectangles.



[[Category:Development]]
== Events ==
Creatures can recieve the next list of events:
* boolean onAttack(target, weapon)<br>''called when attacking a target with the given weapon.''
* boolean onAttacked(attacker, weapon)<br>''called when attacked by someone with a given weapon.''
* void onStopAttack(target)<br>''called when we stop attacking target''
* void onStopAttacked(target)<br>''called when target stops attacking us''
* boolean onDamage(type, amount)<br>''called when entity is damaged with the damage type (physical, fire, poison, magical, ... ) and the amount of damage done.''
* boolean onKilled(attacker, weapon)<br>''called when attacked killed us with the given weapon''
* boolean onKill(target)<br>''called when entity kills target''
* boolean onMove(x,y)<br>''called when entity moves to x,y ( before moving in fact )''
* boolean onCollide(x,y)<br>''called when entity collide at position x,y''
* boolean onCollideWith(target)<br>''called when entity collide with another entity''
* boolean onEquip(item, slot)<br>''called when entity equips item on the given slot''
* boolean onEquipped(source, slot)<br>''called when entity is equipped on the source entity and in the given slot''
* boolean onDrop(item, slot)<br>''called when entity drops item from the given slot to floor''
* boolean onDropped(source, x, y)<br>''called when entity is dropped by source to floor at position x,y''
* void onChat(source, text)<br>''called when someone speaks near entity or write to entity''
* boolean onUse(item)<br>''called when entity use item''
* boolean onUseWith(base, item)<br>''called when entity use item on base item''
* boolean onUsed(source)<br>''called when entity is used by source''
* boolean onUsedWith(source, base)<br>''called when entity is used by source on base item''
* boolean onStop()<br>''called when entity stops moving, attacking, etc...''