Commit graph

172 commits

Author SHA1 Message Date
Al Riddoch
412e9d6df5 2007-07-06 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py: Don't use "with"
	  as a variable name as it is about to become a reserved word in
	  Python 2.6.
2007-07-06 00:41:26 +00:00
Al Riddoch
ffa20b7752 2007-06-19 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/world/objects/buildings/House.py,
	  rulesets/basic/world/objects/buildings/StoneHouse.py,
	  rulesets/basic/world/objects/buildings/__init__.py,
	  rulesets/basic/world/objects/elements/Fire.py,
	  rulesets/basic/world/objects/elements/__init__.py,
	  rulesets/basic/world/objects/tools/Axe.py,
	  rulesets/basic/world/objects/tools/Bow.py,
	  rulesets/basic/world/objects/tools/Pickaxe.py,
	  rulesets/basic/world/objects/tools/Scythe.py,
	  rulesets/basic/world/objects/tools/Shovel.py,
	  rulesets/basic/world/objects/tools/Sword.py,
	  rulesets/basic/world/objects/tools/__init__.py:
	  Remove files that are no longer used from here, and have
	  been duplicated in the mason ruleset.
2007-06-19 12:41:23 +00:00
Al Riddoch
ddfed59ec8 2007-06-19 Al Riddoch <alriddoch@zepler.org>
* rulesets/Python_API.cpp: Remove the messy import hooks that make
	  inherited rulesets work, but screw up module reloading.

	* rulesets/acorn/mind/SkelMind.py,
	  rulesets/acorn/world/objects/Weather.py,
	  rulesets/acorn/world/objects/animals/Crab.py,
	  rulesets/acorn/world/objects/animals/Deer.py,
	  rulesets/acorn/world/objects/animals/Pig.py,
	  rulesets/acorn/world/objects/animals/Squirrel.py,
	  rulesets/acorn/world/objects/animals/Wolf.py,
	  rulesets/acorn/world/objects/buildings/FarmHouse1.py,
	  rulesets/acorn/world/objects/buildings/FarmHouse2.py,
	  rulesets/acorn/world/objects/buildings/FarmHouse3.py,
	  rulesets/acorn/world/objects/buildings/FarmStand.py,
	  rulesets/acorn/world/objects/buildings/FishShop.py,
	  rulesets/acorn/world/objects/buildings/House1.py,
	  rulesets/acorn/world/objects/buildings/House2.py,
	  rulesets/acorn/world/objects/buildings/House3.py,
	  rulesets/acorn/world/objects/buildings/House4.py,
	  rulesets/acorn/world/objects/buildings/House5.py,
	  rulesets/acorn/world/objects/buildings/Inn1.py,
	  rulesets/acorn/world/objects/buildings/Inn2.py,
	  rulesets/acorn/world/objects/buildings/ItemShop.py,
	  rulesets/acorn/world/objects/buildings/Mansion.py,
	  rulesets/acorn/world/objects/buildings/MetalShop.py,
	  rulesets/acorn/world/objects/buildings/Ruin.py,
	  rulesets/acorn/world/objects/buildings/Shack.py,
	  rulesets/acorn/world/objects/buildings/Stall.py,
	  rulesets/acorn/world/objects/buildings/Sty.py,
	  rulesets/acorn/world/objects/buildings/VacantShop1e.py,
	  rulesets/acorn/world/objects/buildings/VacantShop1w.py,
	  rulesets/acorn/world/objects/buildings/VacantShop2.py,
	  rulesets/acorn/world/objects/outdoor/Campfire.py,
	  rulesets/acorn/world/objects/plants/Tree.py,
	  rulesets/acorn/world/objects/plants/seeds/Acorn.py,
	  rulesets/acorn/world/objects/plants/seeds/Apple.py,
	  rulesets/acorn/world/objects/plants/seeds/Seed.py,
	  rulesets/acorn/world/objects/tools/Cleaver.py,
	  rulesets/acorn/world/objects/undead/Arm.py,
	  rulesets/acorn/world/objects/undead/Pelvis.py,
	  rulesets/acorn/world/objects/undead/Ribcage.py,
	  rulesets/acorn/world/objects/undead/Shin.py,
	  rulesets/acorn/world/objects/undead/Skull.py,
	  rulesets/acorn/world/objects/undead/Thigh.py,
	  rulesets/basic/mind/NPCMind.py,
	  rulesets/basic/world/objects/Pile.py,
	  rulesets/basic/world/objects/animals/Animal.py,
	  rulesets/basic/world/objects/buildings/House.py,
	  rulesets/basic/world/objects/buildings/StoneHouse.py,
	  rulesets/basic/world/objects/elements/Fire.py,
	  rulesets/basic/world/objects/plants/Tree.py,
	  rulesets/basic/world/objects/tools/Axe.py,
	  rulesets/basic/world/objects/tools/Bow.py,
	  rulesets/basic/world/objects/tools/Pickaxe.py,
	  rulesets/basic/world/objects/tools/Scythe.py,
	  rulesets/basic/world/objects/tools/Shovel.py,
	  rulesets/basic/world/objects/tools/Sword.py,
	  rulesets/mason/world/objects/Pile.py,
	  rulesets/mason/world/objects/Weather.py,
	  rulesets/mason/world/objects/animals/Deer.py,
	  rulesets/mason/world/objects/animals/Pig.py,
	  rulesets/mason/world/objects/buildings/House.py,
	  rulesets/mason/world/objects/buildings/House3.py,
	  rulesets/mason/world/objects/buildings/StoneHouse.py,
	  rulesets/mason/world/objects/clothing/Garment.py,
	  rulesets/mason/world/objects/elements/Fire.py,
	  rulesets/mason/world/objects/outdoor/Campfire.py,
	  rulesets/mason/world/objects/outdoor/Gravestone.py,
	  rulesets/mason/world/objects/plants/Fir.py,
	  rulesets/mason/world/objects/plants/seeds/Acorn.py,
	  rulesets/mason/world/objects/plants/seeds/Apple.py,
	  rulesets/mason/world/objects/plants/seeds/Fircone.py,
	  rulesets/mason/world/objects/plants/seeds/Seed.py,
	  rulesets/mason/world/objects/tools/Axe.py,
	  rulesets/mason/world/objects/tools/Bow.py,
	  rulesets/mason/world/objects/tools/Bucksaw.py,
	  rulesets/mason/world/objects/tools/Cleaver.py,
	  rulesets/mason/world/objects/tools/Pickaxe.py,
	  rulesets/mason/world/objects/tools/Rope.py,
	  rulesets/mason/world/objects/tools/Scythe.py,
	  rulesets/mason/world/objects/tools/Shovel.py,
	  rulesets/mason/world/objects/tools/Sword.py,
	  rulesets/mason/world/objects/tools/Tinderbox.py,
	  rulesets/mason/world/objects/tools/Torch.py,
	  rulesets/mason/world/objects/tools/Trowel.py,
	  rulesets/mason/world/objects/undead/Skeleton.py,
	  rulesets/mason/world/tasks/Bisect.py,
	  rulesets/mason/world/tasks/Combat.py,
	  rulesets/mason/world/tasks/Logging.py,
	  rulesets/mason/world/tasks/Raise.py,
	  rulesets/mason/world/tasks/Ram.py,
	  rulesets/mason/world/tasks/Sharpen.py,
	  rulesets/mason/world/tasks/Slice.py,
	  rulesets/mason/define_world.py:
	  Convert rulesets over to inheriting from the Thing class in
	  the new non ruleset specific location.

	* rulesets/basic/mind/goals/animal/domestic.py: Add file missing from
	  previous commit.
2007-06-19 12:36:42 +00:00
Al Riddoch
c4c19a3ca9 2007-06-18 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/trigger.py: Generic common trigger
	  goals, starting with a trigger base chase goal.

	* rulesets/basic/mind/goals/animal/domestic.py: Trigger goals specific
	  to domesticated animals, starting with goals for pig herding.

	* rulesets/basic/mind/goals/__init__.py: Add the two new files of
	  trigger goals.

	* rulesets/mason/mind/PigMind.py, rulesets/mason/mind/SkelMind.py,
	  rulesets/mason/mind/WolfMind.py, rulesets/mason/mind/__init__.py:
	  Remove special mind classes for pig, skeleton and wolf, as it
	  should be possible to do it more cleanly with trigger goals.

	* rulesets/mason/define_world.py: Add trigger goals for pig and
	  skeleton to replace the behavior that used to be in special purpose
	  mind classes.
2007-06-18 17:46:14 +00:00
Al Riddoch
4bb04449dd 2007-06-04 Al Riddoch <alriddoch@zepler.org>
* rulesets/mason/world/tasks/Logging.py: Implement logging entirely
	  in the task, instead of relying on functionality in the plant
	  class.

	* rulesets/Py_Quaternion.cpp: Implement rotation method as in the
	  the wfmath class, as required for Logging.

	* rulesets/Plant.cpp: Add an error message if the old plant
	  functionality gets called.

	* rulesets/basic/world/objects/tools/Axe.py: Add an error message
	  noting that this method should not be called.
2007-06-04 08:30:27 +00:00
Al Riddoch
c8b32ad06a This file is long gone, and has no value 2007-05-07 02:09:33 +00:00
Al Riddoch
97d966be62 Missed changelog commit 2007-04-29 02:11:25 +00:00
Al Riddoch
127bfd5d92 2007-04-24 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py,
	  rulesets/basic/mind/goals/common/move.py,
	  rulesets/basic/mind/goals/humanoid/construction.py,
	  rulesets/mason/define_world.py: Fix most goals so they no longer
	  require a reference to the owning mind object on initialisation,
	  meaning they are now more stateless.
2007-04-23 23:42:38 +00:00
Al Riddoch
d43e7f2bb4 2007-04-22 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/move.py: Expire the accompany goal
	  used by mercenaries when the person they are working for no longer
	  exists.
2007-04-22 21:54:00 +00:00
Al Riddoch
05c29a2070 2007-04-08 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py,
	  rulesets/basic/mind/goals/common/move.py,
	  rulesets/basic/mind/goals/humanoid/construction.py:
	  Re-write goals relating to gathering things off the ground
	  to be clearer, more efficient, and to deal with lists of types.

	* rulesets/mason/define_world.py: Use warrior test to test gathering
	  lists of types.
2007-04-08 22:05:39 +00:00
Al Riddoch
23090634f6 2007-03-08 Al Riddoch <alriddoch@zepler.org>
* Makefile.am: Remove GNU echo isms.

	* rulesets/basic/mind/goals/common/move.py: Modify the pick_up_focus()
	  goal so it clears the focus. gather() now gathers things
	  indefinitely.

	* rulesets/mason/define_world.py: Add a test script for warriors to
	  gather stuff.
2007-03-08 14:14:00 +00:00
Al Riddoch
bb9d601cfd 2007-02-18 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/panlingua/interlinguish.py: Add nouns for a
	  number of tools, by Max Randor.

	* rulesets/mason/define_world.py: Make many more tools available for
	  sale, by Max Randor.
2007-02-18 21:59:00 +00:00
Al Riddoch
3bc905142b 2007-01-29 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/panlingua/interlinguish.py: Add some clothing
	  types to the vocabulary.

	* rulesets/mason/define_world.py: Add a tailor stall to the village.
2007-01-29 01:08:04 +00:00
Al Riddoch
defed47f1f 2006-12-12 Al Riddoch <alriddoch@zepler.org>
* configure.ac: Increment version.

	* common/const.h: Declare a doxygen group for all the consts.

	* common/operations.cpp, common/Add.h, common/Attack.h, common/Burn.h,
	  common/Chop.h, common/Connect.h, common/Cut.h, common/Delve.h,
	  common/Dig.h, common/Drop.h, common/Eat.h, common/Monitor.h,
	  common/Mow.h, common/Nourish.h, common/Pickup.h, common/Setup.h,
	  common/Tick.h, common/Unseen.h, common/Update.h:
	  Declare a doxygen group for all custom operations.

	* rulesets/Area.h, rulesets/Character.h, rulesets/Creator.h,
	  rulesets/Entity.h, rulesets/Food.h, rulesets/Line.h,
	  rulesets/Missile.h, rulesets/Plant.h, rulesets/Stackable.h,
	  rulesets/Structure.h, rulesets/World.h: Declare a doxygen group
	  for in game entity classses.

	* common/Property.h, common/Property_impl.h, server/ScriptFactory.cpp,
	  server/ScriptFactory.h, server/SlaveClientConnection.cpp,
	  server/SlaveClientConnection.h: Add some more inlined documentation.
2006-12-12 15:54:20 +00:00
Al Riddoch
e147a8ce93 2006-10-21 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Add doc strings to some key methods.
2006-10-23 11:46:44 +00:00
Al Riddoch
f96e4836ad 2006-10-09 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Add doc strings to a number of
	  functions.
2006-10-09 18:30:23 +00:00
Al Riddoch
67600ea0e2 2006-10-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/dynamic/DynamicGoal.py:
	  Add a doc string to the class.
2006-10-05 13:30:28 +00:00
Al Riddoch
638dc66da0 2006-08-30 Al Riddoch <alriddoch@zepler.org>
* rulesets/Python_API.cpp: Change the entity_new constructor used
	  by define world scripts so that it takes an optional "pos" argument
	  rather than the long obsolete "xyz".

	* rulesets/mason/define_world.py, rulesets/werewolf/define_world.py:
	  Modify the most relevant define_world scripts to use the changed API.

	* rulesets/basic/mind/goals/common/move.py: Remove a long obsolete
	  commented out debug line.
2006-08-29 23:54:08 +00:00
Al Riddoch
475bb2dc2d 2006-07-21 Al Riddoch <alriddoch@zepler.org>
* rulesets/Thing.h, rulesets/Thing.cpp, rulesets/Plant.h,
	  rulesets/Plant.cpp: Remove SetupOperation from Thing
	  and implement in Plant, as not all entities need a starting
	  tick, but plants do.

	* rulesets/basic/world/objects/elements/Fire.py,
	  rulesets/mason/world/objects/Weather.py: Add setup_operation
	  handlers as these scripts require ticks.
2006-07-21 01:26:19 +00:00
Al Riddoch
6453493c6f 2006-07-11 Al Riddoch <alriddoch@zepler.org>
* rulesets/BaseMind.cpp, rulesets/MemMap.cpp, rulesets/MemMap.h:
	  Remove commented out lookId code. Re-write findByLocation to
	  require a type as well, and use a more efficient search to find
	  the entities requested.

	* rulesets/Py_Map.cpp: Re-write find_by_location wrapper to handle
	  the extra type argument.

	* rulesets/basic/mind/Memory.py: Re-write recall_place so that
	  type and radius are now required, and make sure all types listed
	  are checked for.

	* rulesets/basic/mind/goals/common/move.py: Check if recall_place
	  has returned anything at all.
2006-07-11 17:42:22 +00:00
Al Riddoch
78c0a585e9 2006-06-20 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py: Fix some issues
	  with code that assumed op.from and op.to where entities rather
	  than entity IDs.
2006-06-20 16:40:57 +00:00
Al Riddoch
02e151cb4e 2006-06-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/move.py: Make deer run further
	  when they are scared, thus making their movement smoother.
2006-06-05 14:50:55 +00:00
Al Riddoch
bf316eeb28 2006-04-27 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/terrain.py: Add client script to allow easy
	  setup of some basic terrain types.
2006-04-28 15:46:27 +00:00
Al Riddoch
53879c8ca6 2006-04-25 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/test_python_api.py: More tests of the Python API
	  for Atlas Operations.
2006-04-25 15:00:00 +00:00
Al Riddoch
004774692d 2006-04-21 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/test_python_api.py: Add test script to exercise
	  the server's Python API.
2006-04-21 00:52:50 +00:00
Al Riddoch
a6f2f92374 2006-02-11 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py: Clean up defend
	  goal so it works with new spot_something.

	* rulesets/mason/define_world.py: Add goblins.
2006-02-11 04:09:16 +00:00
Al Riddoch
9600aabab5 2006-01-21 Al Riddoch <alriddoch@zepler.org>
* client/Py_CreatorClient.cpp, rulesets/Py_Map.cpp,
	  rulesets/Py_Operation.cpp, rulesets/Py_Oplist.cpp,
	  rulesets/Py_Point3D.cpp, rulesets/Py_Vector3D.cpp,
	  rulesets/Py_WorldTime.cpp, rulesets/Python_API.cpp:
	  Convert functions that take a single argument to use METH_O
	  and avoid calling PyArg_ParseTuple.

	* rulesets/Py_Point3D.cpp, rulesets/Py_Vector3D.cpp,
	  rulesets/basic/mind/goals/common/move.py: Rename
	  unit_vector_to_another_vector to unit_vector_to.
2006-01-22 02:13:52 +00:00
Al Riddoch
f8b54007ac 2006-01-06 Al Riddoch <alriddoch@zepler.org>
* rulesets/Python_API.cpp: Remove C++ implementation of server.dictlist
	  as its installation was messy, and it serves no purpose being
	  implemented in C++.

	* rulesets/basic/mind/NPCMind.py, rulesets/basic/mind/dictlist.py:
	  Use python dictlist implementation from original Python version
	  of cyphesis.
2006-01-06 21:39:00 +00:00
Al Riddoch
027b481aee 2006-01-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/Py_WorldTime.cpp: Extend the type object for python
	  WorldTime to the format used by more recent python versions,
	  adding new and init methods as well as flags, and doc string.

	* rulesets/Python_API.cpp: Refactor the way the server python
	  module and its type server.WorldTime are created to be the
	  preferred way for more recent python versions.

	* rulesets/basic/mind/NPCMind.py: Remove explicit WorldTime
	  member, as there is already one in the C++ base class.
2006-01-05 16:52:52 +00:00
Al Riddoch
dd362305e2 2005-12-26 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/MemMap.py: Remobe obsolete AI code.
2005-12-26 23:45:52 +00:00
Al Riddoch
a2914a39e3 2005-12-24 Al Riddoch <alriddoch@zepler.org>
* rulesets/Python_API.cpp: Re-work the keywords handling in Operation()
	  to avoid bugs in the mapping protocol by using Dict functions, and
	  eliminate wasteful double lookup. No longer accept setting FROM
	  in constructor as its never required.

	* rulesets/werewolf/world/objects/characters/Villager.py,
	  rulesets/basic/editor.py: No longer set FROM on operations at
	  construction. It was never necessary.
2005-12-24 02:23:31 +00:00
Al Riddoch
2d5b996346 2005-12-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py: Fix a problem where
	  an NPC seller would not count all the coins handed over immediatly.

	* rulesets/basic/mind/goals/humanoid/transaction.py: Add a FIXME about
	  a mis-coding using for loops.
2005-12-23 01:24:53 +00:00
Al Riddoch
4c5776d51a 2005-12-18 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/humanoid/transaction.py: Tell the seller
	  how much the pig they have just sold was worth. Only value each
	  pig rather than continuously re-pricing the same pig.
2005-12-18 03:08:25 +00:00
Al Riddoch
7aca1c79bc 2005-12-16 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Remove a return statement so
	  legacy money handling code still works.
2005-12-16 15:37:18 +00:00
Al Riddoch
42e765d81b 2005-12-16 Al Riddoch <alriddoch@zepler.org>
* rulesets/mason/define_world.py: Fix formatting.

	* rulesets/basic/mind/NPCMind.py: Add structure to store things
	  an NPC has been given.

	* rulesets/basic/mind/goals/humanoid/transaction.py: Add new goal
	  for buying things from a given entity.
2005-12-16 02:33:31 +00:00
Al Riddoch
1a246f180a 2005-12-13 Al Riddoch <alriddoch@zepler.org>
* rulesets/BaseMind.cpp: When appearance arrives, check stamp and send
	  looks if necessary.

	* rulesets/basic/mind/NPCMind.py: Remove some debug output.
2005-12-13 18:41:40 +00:00
Al Riddoch
bd887cf571 2005-12-13 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/common/misc_goal.py: Don't set TO
	  on eat ops from goals.
2005-12-13 02:32:04 +00:00
Al Riddoch
e2b83394b0 2005-12-13 Al Riddoch <alriddoch@zepler.org>
* common/const.h: Add a second const for the non-squared default
	  box size for visibility calculations.

	* modules/Location.cpp: Initialise cached box size members with
	  defaults from consts.

	* rulesets/basic/mind/goals/common/move.py: Don't remove focus
	  knowledge about item just because it has been picked up. This
	  fixes eating acorns.

	* rulesets/basic/mind/goals/common/misc_goal.py: Remove focus knowledge
	  when something is eaten.
2005-12-13 01:38:08 +00:00
Al Riddoch
a9e1d4993c 2005-12-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py,
	  rulesets/basic/world/objects/Thing.py: Move some functionality
	  from the Thing base class into NPCMind, leaving minimal
	  functionality in the base class making it suitable as an interface
	  for all scripts.
2005-12-05 21:40:45 +00:00
Al Riddoch
77c19a4395 2005-12-05 Al Riddoch <alriddoch@zepler.org>
* rulesets/Py_BBox.cpp, rulesets/Py_Optime.cpp,
	  rulesets/Py_Statistics.cpp, rulesets/Py_Thing.cpp: Ensure that
	  setattr returns an exception if the attribute is not a valid one.

	* rulesets/Py_Map.cpp, rulesets/Py_Point3D.cpp,
	  rulesets/Py_Quaternion.cpp, rulesets/Py_World.cpp,
	  rulesets/Py_WorldTime.cpp: Remove setattr, as no attributes can
	  be set on this type.

	* rulesets/Py_Mind.cpp, rulesets/Py_Oplist.cpp,
	  rulesets/Py_Vector3D.cpp: Clean up type structure.

	* rulesets/basic/mind/goals/common/move.py: Remove attempt
	  to set "rotation" attribute on location, as its obsolete
	  and pointless.
2005-12-05 04:01:11 +00:00
Al Riddoch
58cb9f7012 2005-12-01 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/world/objects/Thing.py: Get rid of redundant kw
	  arg to constructor, move op_dict initialisation to cinit()
	  and remove base_init completely as its only required to handle
	  the C++ constructor behavoir which we no longer need.

	* rulesets/basic/mind/NPCMind.py: Get rid of redundant args to
	  to mind, and call cinit to handle connection to C++ core directly
	  now that base_init is gone.
2005-12-01 02:17:06 +00:00
Al Riddoch
15fa406cc5 2005-12-01 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/BaseMind.py: Remove obsolete base mind class,
	  now completely implemented in C++.
2005-12-01 01:29:50 +00:00
Al Riddoch
64851093f1 2005-12-01 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/ExternalMind.py: Remove obsolete external
	  mind class, now completely implemented in C++.
2005-12-01 01:14:45 +00:00
Al Riddoch
ba4a73dfe5 2005-11-30 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/world/objects/Thing.py: Remove self.attributes
	  from the base class for all python scripts.

	* rulesets/mason/world/objects/Weather.py,
	  rulesets/basic/world/objects/plants/Tree.py,
	  rulesets/basic/world/objects/animals/Animal.py,
	  data/basic.xml, data/mason.xml: Don't use set_kw to handle default
	  attributes, and add the to the .xml rules files.

	* rulesets/basic/world/objects/buildings/House.py,
	  rulesets/basic/world/objects/buildings/StoneHouse.py,
	  rulesets/basic/world/objects/tools/Bow.py,
	  rulesets/basic/world/objects/tools/Sword.py,
	  rulesets/mason/world/objects/animals/Deer.py,
	  rulesets/mason/world/objects/animals/Pig.py,
	  rulesets/mason/world/objects/outdoor/Campfire.py,
	  rulesets/mason/world/objects/outdoor/Gravestone.py,
	  rulesets/mason/world/objects/plants/seeds/Acorn.py,
	  rulesets/mason/world/objects/plants/seeds/Apple.py,
	  rulesets/mason/world/objects/plants/seeds/Fircone.py,
	  rulesets/mason/world/objects/plants/seeds/Seed.py,
	  rulesets/mason/world/objects/tools/Cleaver.py,
	  rulesets/mason/world/objects/undead/Skeleton.py,
	  rulesets/werewolf/world/objects/characters/Villager.py,
	  rulesets/werewolf/world/objects/tools/Gallows.py:
	  Don't import set_kw from misc, as its now obsolete and unused.
2005-11-30 22:37:50 +00:00
Al Riddoch
5b5d29ea62 2005-11-23 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Add handling for 'about' knowledge
	  and return it in a way that makes sense to the listener.

	* rulesets/mason/define_world.py: Provide NPCs which lots of
	  information 'about' the world, so they can help players.
2005-11-25 03:21:09 +00:00
Al Riddoch
8c0a05b40b 2005-11-02 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Don't respond to knowledge
	  queries if the character has no knowledge.

	* server/Connection.cpp, rulesets/Creator.cpp, rulesets/Character.cpp:
	  Use flag check to see if operations have FROM set, rather than
	  checking for an empty string.

	* rulesets/Thing.cpp: When handling move ops, avoid lookup of LOC
	  in world unless it has changed.
2005-11-02 02:06:38 +00:00
Al Riddoch
e3806759eb 2005-10-20 Al Riddoch <alriddoch@zepler.org>
* rulesets/Character.cpp: Report a warning when action ops are sent
	  from client or mind code.

	* rulesets/Py_Location.cpp: Allow invalid vectors to be used
	  to set attributes on Location.

	* rulesets/acorn/world/objects/undead/Skeleton.py,
	  rulesets/mason/world/objects/undead/Skeleton.py: Remove action
	  ops replacing them with setting MODE of skeleton to
	  collapsed.

	* rulesets/basic/mind/NPCMind.py,
	  rulesets/basic/mind/goals/common/misc_goal.py: Use Imaginary ops
	  rather than Action for emotes.
2005-10-20 14:34:01 +00:00
Al Riddoch
dc50c8c7f2 2005-10-19 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/NPCMind.py: Fix face() so that NPC doesn't crash
	  if it turns to face something that is zero distance away.

	* server/EntityFactory.cpp: Improve error reporting when an entity
	  has velocity set at creation, and ensure that the velocity is
	  unset before the entity goes into the world.
2005-10-19 20:44:41 +00:00
Al Riddoch
53ebdc74ed 2005-09-13 Al Riddoch <alriddoch@zepler.org>
* modules/Location.cpp: Fix a bug where POS was being corrupted
	  whenever velocity was supposed to be set.

	* rulesets/basic/mind/goals/humanoid/mason.py: Convert ID to entity
	  before checking location.

	* rulesets/mason/mind/PigMind.py: Convert ID to entity before
	  passing location to another function.
2005-09-13 01:44:49 +00:00
Al Riddoch
2ea8129440 2005-09-11 Al Riddoch <alriddoch@zepler.org>
* rulesets/basic/mind/goals/humanoid/mason.py: Fix self -> me
	  when checking for mind ID.
2005-09-11 18:56:12 +00:00