Commit Graph

902 Commits

Author SHA1 Message Date
Gary Tierney 30a1aebb56 Remove Maven POM files 2017-01-02 04:59:41 +00:00
Gary Tierney 4d79052199 Convert to the gradle build system
Ports the Maven build POMs to Gradle build scripts, which are a bit
friendlier to use.  Instead of using the exec:java Maven goal to run the
server now, the gradle run task should be used.
2017-01-02 04:44:04 +00:00
Gary Tierney e5a6638e2f Add support for player / npc following
Implements a new MobExtension plugin which adds 'follow', and 'chase'
mixins that allow the mob to follow behind another mob, and chase them
while keeping at a safe distance to fire projectiles.  Also adds a new
public method 'raycast' to CollisionManager, for drawing a line through
the world using bresenham's line algorithm whille checking for any impenetrable
objects.
2017-01-02 04:11:13 +00:00
Gary Tierney baa12ca446 Add a mob extension plugin for walking to entities
Adds a new mob extension plugin which creates a walk_to() method on
Mobs to allow walking to another entity (accounting for the size of the
entity) with an optional facing position.
2017-01-02 03:39:02 +00:00
Gary Tierney b047d0197a Add a plugin which allows creating mixins for Mobs
Adds a mob-extension plugin, which allows creating modules as mixins to
be monkey-patched into the Mob class.  Having a standard method of doing
this prevents confusing problems with mixin name conflicts, by allowing
the plugin to raise an error that 2 mixins with the same name exist.
2017-01-01 08:13:09 +00:00
Gary Tierney 82643b10b6 Merge pull request #222 from apollo-rsps/bugfix/collision-detection
Add support for building and updating collision flags on the fly
2016-12-31 05:26:56 +00:00
Gary Tierney 916f6c547d Add tests around CollisionManager functionality
Adds tests for the CollisionManager which makes sure that collision
matrices are correctly built for the following object types:

* Interactables
* Walls
* Corners

Missing from these tests are tests for blocked / bridged tiles, and
large corner walls, which can be added later.  Additionally, the test
cases include ASCII illustrations of the collision grid and how it is
built / checked for a particular object or movement.
2016-12-31 05:19:49 +00:00
Gary Tierney 6188c2e751 Add support for dynamic collision detection
This commit implements collision detection using the map files loaded
from the cache, and adds support for modifying the collision matrices at
runtime when the game world is updated.

All checks to see if a tile is reachable should now be done via.
World#traversable, instead of Region#traversable, as the World object
can handle checking tiles across multiple regions.  These are done for
the WalkingQueue and Pathfinder implementations.
2016-12-31 05:14:19 +00:00
Gary Tierney 0672fa2ea0 Fix bitwise negation in CollisionMatrix#clear()
Adds the missing bitwise AND to the clear() method in CollisionMatrix,
so any flags besides the one given are retained.
2016-12-31 02:09:42 +00:00
Gary Tierney 376d36871a Allow registering region listeners globally
Adds the ability to register region listeners with the
RegionRepository, which will register the listener with any existing
regions and cache it for any newly created regions later.
2016-12-31 02:09:42 +00:00
Gary Tierney 6a4625cb32 Refactor map loading code
Refactors the map file loading code by importing existing code from the
Vicis cache editor project.  Adds classes for decoding objects and tiles
for a given map file index. Only the new MapIndex decoder code is used
when loading GameObjects at the moment , which will later be updated.
2016-12-31 02:08:58 +00:00
Major b7a57fa973 Merge pull request #286 from CharlesVaneenoo/TemplateMethod-ChatMessage
Make ChatMessage abstract
2016-03-19 23:14:59 +00:00
AymericDu a8cada6f9e Template method on ChatMessage 2016-03-19 15:37:28 +01:00
Major 7124a2b9d8 Merge pull request #295 from WizardJesse1/patch-1
Fix Distance check
2016-03-19 13:58:18 +00:00
Major 407d44fd93 Merge pull request #289 from CharlesVaneenoo/rename_next_dialogue
Rename get_next_dialogue
2016-03-19 13:52:45 +00:00
Jesse Woolsey 6cf2fb0a5c Fix Distance check
Before:

http://recordit.co/qFCM2jaox2

After:

http://recordit.co/Jre4B5s1zT
2016-03-18 19:52:06 -04:00
CharlesVaneenoo d79d402394 Rename get_next_dialogue 2016-03-18 18:31:38 +01:00
Major 38d2bd1cee Merge pull request #291 from CharlesVaneenoo/TodoAlreadyDone
Remove old TODOs
2016-03-18 16:25:25 +00:00
Pierre Hequette a48d7cde38 remove old TODO 2016-03-18 15:00:57 +01:00
Major dfa8ebed07 Merge pull request #284 from CharlesVaneenoo/remove_useless_if
Remove useless if in GamePacketencoder
2016-03-17 20:39:13 +00:00
Major cc63bce4f8 Merge pull request #285 from CharlesVaneenoo/improve_putBits
improve putBits
2016-03-17 20:38:17 +00:00
CharlesVaneenoo 564977a63d improve putBits 2016-03-15 20:54:11 +01:00
CharlesVaneenoo fc5b8d7b0b Remove useless if 2016-03-15 20:01:00 +01:00
Major 7cc39b1685 Merge pull request #281 from CharlesVaneenoo/fix_issue_178
Fix issue #178
2016-03-14 13:15:57 +00:00
AymericDu 9dbb3e3233 Fix issue #178 2016-03-14 13:51:17 +01:00
Major bb5c75fa4a Fix #272 2016-03-14 08:40:53 +00:00
Major a59bbe68f6 Merge pull request #252 from CharlesVaneenoo/RefactorHandle
refactor method handle in EquipItemHandler.java
2016-03-13 09:28:05 +00:00
Major d533051acb Merge pull request #279 from Major-/master
Ignore some bad rubocops
2016-03-13 09:25:47 +00:00
Major- dccfd38227 Ignore some bad rubocops 2016-03-13 09:21:10 +00:00
Major 2b7462bc98 Merge pull request #269 from apollo-rsps/enhancement/contributor-guidelines
Add contributor guidelines
2016-03-12 13:49:18 +00:00
Gary Tierney 43e522b1ba Update contributors guidelines 2016-03-12 13:39:47 +00:00
CharlesVaneenoo 47884419fb Create initial contributors guidelines 2016-03-12 13:39:47 +00:00
Major 0f3fca0372 Merge pull request #278 from CharlesVaneenoo/add_text_instruction
Add missing Survival Guide text
2016-03-12 13:36:25 +00:00
CharlesVaneenoo 168e8c44a1 Add text in instruction.rb
Add text in instruction.rb
2016-03-12 10:35:10 +01:00
Major 4c3b151012 Merge pull request #270 from apollo-rsps/feature/projectiles
Add support for projectiles
2016-03-12 04:33:02 +00:00
Gary Tierney f2aced1bca Add support for projectiles
* Adds support for short-lived entities, which are never added to the
  entity sets of the region they belong in.

* Adds support for checking the number of tiles a Mob occupies.

* Adds a ProjectileBuilder class to simplify creating projectiles.
2016-03-11 20:03:33 +00:00
Major 761af6d97b Merge pull request #275 from CharlesVaneenoo/typoCorrection
Change conversation name in survival.rb
2016-03-11 15:56:07 +00:00
munggs bf41915bcd Correct typo in survival.rb 2016-03-11 16:38:18 +01:00
Major b539b26c83 Merge pull request #253 from CharlesVaneenoo/RefactorInventoryAdd
Refactor Inventory#add()
2016-03-11 15:31:54 +00:00
munggs 5aa7e0f90d Refactor add method in Inventory 2016-03-11 16:26:53 +01:00
Major d597f3c584 Merge pull request #273 from CharlesVaneenoo/simplify_getIndefiniteArticle
Simplify getIndefiniteArticle()
2016-03-11 15:05:48 +00:00
CharlesVaneenoo 449ba14b42 Simplify the method getIndefiniteArticle
Fix bug
2016-03-11 14:15:14 +01:00
Hequette Pierre 172e347912 refactor method handle in EquipItemHandler.java 2016-03-08 22:24:58 +01:00
Gary Tierney 8c6f25380c Merge pull request #263 from cubeee/move-rsa-keys
Move RSA keys to their own file and use a pem file for them
2016-03-08 13:18:06 +00:00
Cube d45b8ef846 Remove bouncycastle dependency from util 2016-03-08 13:56:12 +02:00
Cube bde4061b8a Store RSA in a PEM file instead of xml
- RsaKeyGenerator automatically saves the RSA keys in a PEM file
- Corrects key bit size suggestion
2016-03-08 13:55:08 +02:00
Cube 0eb8a6e7e6 Move RSA keys to their own file
RSA keys are sensitive information that should not be stored in git repositories.
This commit moves them to their own file, adds it to .gitignore and provides a template file.
2016-03-08 13:55:07 +02:00
Gary Tierney a02eceb436 Merge pull request #258 from CharlesVaneenoo/SkillSetTests
Add SkillSet unit tests
2016-03-07 22:03:36 +00:00
Jeremy MATHIAS ca82ad5e4e Add unit tests for SkillSet 2016-03-07 16:14:52 +01:00
Major ef2ae48d2f Merge pull request #264 from CharlesVaneenoo/create_drink.rb
Create drink.rb
2016-03-06 20:24:08 +00:00