<feed xmlns='http://www.w3.org/2005/Atom'>
<title>manaserv.git/example/scripts/items, branch abilities</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/'/>
<entry>
<title>Moved functions to entity members where appropriate</title>
<updated>2013-04-15T19:24:55+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2013-04-15T19:24:55+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=ef4175cdfae6a6981738e15cb0009d8e47ed7c80'/>
<id>ef4175cdfae6a6981738e15cb0009d8e47ed7c80</id>
<content type='text'>
Some functions were skipped for now because they may need a new name
or change of behavior. Changes:

    chr_warp                        entity:warp
    chr_get_inventory               entity:inventory
    chr_inv_change                  entity:inv_change
    chr_inv_count                   entity:inv_count
    chr_get_equipment               entity:equipment
    chr_equip_slot                  entity:equip_slot
    chr_equip_item                  entity:equip_item
    chr_unequip_slot                entity:unequip_slot
    chr_unequip_item                entity:unequip_item
    chr_get_level                   entity:level
    chr_get_exp                     entity:xp
    chr_give_exp                    entity:give_xp
    chr_get_rights                  entity:rights
    chr_set_hair_style              entity:set_hair_style
    chr_get_hair_style              entity:hair_style
    chr_set_hair_color              entity:set_hair_color
    chr_get_hair_color              entity:hair_color
    chr_get_kill_count              entity:kill_count
    chr_give_special                entity:give_special
    chr_has_special                 entity:has_special
    chr_take_special                entity:take_special
    chr_set_special_recharge_speed  entity:set_special_recharge_speed
    chr_get_special_recharge_speed  entity:special_recharge_speed
    chr_set_special_mana            entity:set_special_mana
    chr_get_special_mana            entity:special_mana
    chr_kick                        entity:kick
    exp_for_level                   xp_for_level
    monster_get_id                  entity:monster_id
    monster_change_anger            entity:change_anger
    monster_drop_anger              entity:drop_anger
    monster_get_angerlist           entity:angerlist
    being_apply_status              entity:apply_status
    being_remove_status             entity:remove_status
    being_has_status                entity:has_status
    being_set_status_time           entity:set_status_time
    being_get_status_time           entity:status_time
    being_get_gender                entity:gender
    being_set_gender                entity:set_gender
    being_type                      entity:type
    being_walk                      entity:walk
    being_say                       entity:say
    being_damage                    entity:damage
    being_heal                      entity:heal
    being_get_name                  entity:name
    being_get_action                entity:action
    being_set_action                entity:set_action
    being_get_direction             entity:direction
    being_set_direction             entity:set_direction
    being_apply_attribute_modifier  entity:apply_attribute_modifier
    being_remove_attribute_modifier entity:remove_attribute_modifier
    being_set_base_attribute        entity:set_base_attribute
    being_get_modified_attribute    entity:modified_attribute
    being_get_base_attribute        entity:base_attribute
    being_set_walkmask              entity:set_walkmask
    being_get_walkmask              entity:walkmask
    being_get_mapid                 entity:mapid
    chat_message                    entity:message
    being_register                  entity:register
    chr_shake_screen                entity:shake_screen
    chr_create_text_particle        entity:show_text_particle
    -                               entity:position
    posX                            entity:x
    posY                            entity:y
    monster_get_name                monsterclass:name
    item_get_name                   itemclass:name
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some functions were skipped for now because they may need a new name
or change of behavior. Changes:

    chr_warp                        entity:warp
    chr_get_inventory               entity:inventory
    chr_inv_change                  entity:inv_change
    chr_inv_count                   entity:inv_count
    chr_get_equipment               entity:equipment
    chr_equip_slot                  entity:equip_slot
    chr_equip_item                  entity:equip_item
    chr_unequip_slot                entity:unequip_slot
    chr_unequip_item                entity:unequip_item
    chr_get_level                   entity:level
    chr_get_exp                     entity:xp
    chr_give_exp                    entity:give_xp
    chr_get_rights                  entity:rights
    chr_set_hair_style              entity:set_hair_style
    chr_get_hair_style              entity:hair_style
    chr_set_hair_color              entity:set_hair_color
    chr_get_hair_color              entity:hair_color
    chr_get_kill_count              entity:kill_count
    chr_give_special                entity:give_special
    chr_has_special                 entity:has_special
    chr_take_special                entity:take_special
    chr_set_special_recharge_speed  entity:set_special_recharge_speed
    chr_get_special_recharge_speed  entity:special_recharge_speed
    chr_set_special_mana            entity:set_special_mana
    chr_get_special_mana            entity:special_mana
    chr_kick                        entity:kick
    exp_for_level                   xp_for_level
    monster_get_id                  entity:monster_id
    monster_change_anger            entity:change_anger
    monster_drop_anger              entity:drop_anger
    monster_get_angerlist           entity:angerlist
    being_apply_status              entity:apply_status
    being_remove_status             entity:remove_status
    being_has_status                entity:has_status
    being_set_status_time           entity:set_status_time
    being_get_status_time           entity:status_time
    being_get_gender                entity:gender
    being_set_gender                entity:set_gender
    being_type                      entity:type
    being_walk                      entity:walk
    being_say                       entity:say
    being_damage                    entity:damage
    being_heal                      entity:heal
    being_get_name                  entity:name
    being_get_action                entity:action
    being_set_action                entity:set_action
    being_get_direction             entity:direction
    being_set_direction             entity:set_direction
    being_apply_attribute_modifier  entity:apply_attribute_modifier
    being_remove_attribute_modifier entity:remove_attribute_modifier
    being_set_base_attribute        entity:set_base_attribute
    being_get_modified_attribute    entity:modified_attribute
    being_get_base_attribute        entity:base_attribute
    being_set_walkmask              entity:set_walkmask
    being_get_walkmask              entity:walkmask
    being_get_mapid                 entity:mapid
    chat_message                    entity:message
    being_register                  entity:register
    chr_shake_screen                entity:shake_screen
    chr_create_text_particle        entity:show_text_particle
    -                               entity:position
    posX                            entity:x
    posY                            entity:y
    monster_get_name                monsterclass:name
    item_get_name                   itemclass:name
</pre>
</div>
</content>
</entry>
<entry>
<title>Register Lua script API functions into the global namespace</title>
<updated>2012-03-11T18:27:32+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2012-03-11T17:16:16+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=5ff34fd2458dff28d664c90fb93f455231f8633c'/>
<id>5ff34fd2458dff28d664c90fb93f455231f8633c</id>
<content type='text'>
Scripts mostly execute the Mana script API, and it seems like just
unnecessary verbosity to refer to the 'mana' table all the time. This table
no longer exists now.

Reviewed-by: Erik Schilling
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Scripts mostly execute the Mana script API, and it seems like just
unnecessary verbosity to refer to the 'mana' table all the time. This table
no longer exists now.

Reviewed-by: Erik Schilling
</pre>
</div>
</content>
</entry>
<entry>
<title>Use callbacks for items, monsters and status effects</title>
<updated>2012-03-03T20:24:45+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2012-03-02T22:17:07+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=84c87cc99be29a694f0ffe83ab7a06ae433bb0cd'/>
<id>84c87cc99be29a694f0ffe83ab7a06ae433bb0cd</id>
<content type='text'>
Previously, global function names were defined in the respective XML
definitions of items, monsters and status effects. This was reasonable when
they all had the same state, but now they're sharing the single global
Lua state.

Now the Lua API provides access to the ItemClass, MonsterClass and
StatusEffect instances, on which callbacks for both standard and custom
events can be explicitly set.

Reviewed-by: Erik Schilling
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, global function names were defined in the respective XML
definitions of items, monsters and status effects. This was reasonable when
they all had the same state, but now they're sharing the single global
Lua state.

Now the Lua API provides access to the ItemClass, MonsterClass and
StatusEffect instances, on which callbacks for both standard and custom
events can be explicitly set.

Reviewed-by: Erik Schilling
</pre>
</div>
</content>
</entry>
<entry>
<title>A bunch of cleanups to example Lua scripts</title>
<updated>2012-03-02T17:12:17+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2012-02-26T22:28:43+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=a36e231883d595bcba91d44e19f24b31eaf0431b'/>
<id>a36e231883d595bcba91d44e19f24b31eaf0431b</id>
<content type='text'>
Mostly removed bulky copyright headers and fixed indentation and line length.

Reviewed-by: Yohann Ferreira
Reviewed-by: Erik Schilling
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Mostly removed bulky copyright headers and fixed indentation and line length.

Reviewed-by: Yohann Ferreira
Reviewed-by: Erik Schilling
</pre>
</div>
</content>
</entry>
<entry>
<title>Merged all the different Lua states into one</title>
<updated>2012-03-02T17:12:07+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2012-02-26T21:06:10+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=34ac0d64e23f2b2d3981dbb0ea72157f334805dd'/>
<id>34ac0d64e23f2b2d3981dbb0ea72157f334805dd</id>
<content type='text'>
No more Lua state for each status effect, monster, item effect or map. All
scripts are loaded into the same state. This should be more efficient overall
and make it easier to implement dynamic reloading of the scripts in the
future.

Now, this introduces the problem of name collisions between different Lua
scripts. For now this is solved by using more specific function names, like
'tick_plague' and 'tick_jump' rather than just 'tick'. The plan is however
to get rid of these globals, and register these callbacks from the script,
so that they can be local functions without the danger of colliding with
other scripts.

Reviewed-by: Erik Schilling
Reviewed-by: Yohann Ferreira
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No more Lua state for each status effect, monster, item effect or map. All
scripts are loaded into the same state. This should be more efficient overall
and make it easier to implement dynamic reloading of the scripts in the
future.

Now, this introduces the problem of name collisions between different Lua
scripts. For now this is solved by using more specific function names, like
'tick_plague' and 'tick_jump' rather than just 'tick'. The plan is however
to get rid of these globals, and register these callbacks from the script,
so that they can be local functions without the danger of colliding with
other scripts.

Reviewed-by: Erik Schilling
Reviewed-by: Yohann Ferreira
</pre>
</div>
</content>
</entry>
<entry>
<title>Merged the example client and server data</title>
<updated>2012-02-25T21:14:44+00:00</updated>
<author>
<name>Thorbjørn Lindeijer</name>
<email>thorbjorn@lindeijer.nl</email>
</author>
<published>2012-02-25T20:18:46+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ablu/public_git/manaserv.git/commit/?id=3629aebb96959afc56cf04d1f2fc4a9f03e94183'/>
<id>3629aebb96959afc56cf04d1f2fc4a9f03e94183</id>
<content type='text'>
It's easier to just talk about world data and to modify it as a whole.
If there is really a need to separate it, a project can still choose to do
that (and in whatever suitable way). There is no need to enforce this
separation or to do it in our example.

Reviewed-by: Erik Schilling
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It's easier to just talk about world data and to modify it as a whole.
If there is really a need to separate it, a project can still choose to do
that (and in whatever suitable way). There is no need to enforce this
separation or to do it in our example.

Reviewed-by: Erik Schilling
</pre>
</div>
</content>
</entry>
</feed>
