Gary Tierney
5bd663f505
Add a DSL for defining ammo types
2018-01-28 18:44:11 +00:00
Gary Tierney
1303c25430
Remove plugin API stub
2018-01-28 18:44:10 +00:00
Trevor Flynn
97896a34a4
Add implementation of runecrafting skill
2018-01-17 22:25:21 +00:00
Major
397d9b2d6a
Merge pull request #366 from apollo-rsps/kotlin-experiments-areas
...
Port the area actions plugin
2017-09-26 13:57:29 +01:00
Major
6e3ddff51a
Correctly import api.Definitions
2017-09-24 22:56:48 +01:00
Major
046f373c9e
Add packages to plugins
2017-09-24 22:35:07 +01:00
Major
b4e8a7136b
Add skill extension properties
2017-09-24 19:44:17 +01:00
Major
ce1bcba893
Port Area plugin to Kotlin
2017-09-24 18:50:13 +01:00
Major
cb9e6f353d
Let plugins intercept Events
...
Support for PlayerEvents already exists, but general event
support wasn't included in the original KotlinPluginScript.
2017-09-24 18:13:17 +01:00
Major
ae3d3c7ce2
Add destructuring operators for Position
2017-09-24 03:48:55 +01:00
Major
8c2f086ae5
Remove meta.toml files
...
Since plugins were moved to gradle they aren't used anyway.
2017-09-24 02:40:33 +01:00
Trevor Flynn
01f2bdda58
Port Fishing plugin to kotlin ( #347 )
...
This also fixes a bunch of bugs.
2017-09-24 02:00:38 +01:00
Major
64ee653423
Rename dls.kt to dsl.kt
2017-09-23 19:37:31 +01:00
Gary Tierney
53521e7e0d
Update varrock plugin package name
2017-09-23 13:30:23 +01:00
Trevor Flynn
22df59500e
Add varrock shops
2017-09-23 04:13:47 +01:00
Major
52c25946b9
Add shops plugin
...
Thanks to tlf30 for a lot of work on this.
2017-09-23 04:12:08 +01:00
Major
6d202abbc2
Support lookup_x inputs with the id at the end
2017-09-23 04:11:44 +01:00
Arin
1c8bc3a009
Add door support in Kotlin ( #356 )
...
Adds support for doors as a Kotlin plugin, based on the previous ruby plugin by shiver.
2017-09-20 11:29:36 +01:00
Gary Tierney
2cd160feb3
Refactor woodcutting to use coroutines
2017-09-19 19:02:29 +01:00
Trevor Flynn
75a9b828b2
Fix all issues. Wood cutting now works.
2017-09-19 19:02:29 +01:00
Trevor Flynn
da7c7e10b4
Woodcutting now uses Async Action
2017-09-19 19:02:29 +01:00
Trevor Flynn
3e6415f0d2
Initial commit on new woodcutting branch
2017-09-19 19:02:29 +01:00
Gary Tierney
76dd8ba192
Refactor asynchronous actions to avoid thread usage
...
Adds custom coroutines specifically for use within Actions. This
implements all features of the previous system, however, does not rely
on a separate executor to wake up continuations.
Note: since Actions are still ran by an executor and a small chance of
overlap exists the ActionCoroutine implementation uses atomic counters
and references.
2017-09-19 01:52:10 +01:00
Gary Tierney
169d89ffc0
Clear static object REMOVE messages when re-adding
2017-09-17 20:27:50 +01:00
Gary Tierney
8a3decfc54
Enable experimental coroutines for all kotlin projects
2017-09-17 19:37:14 +01:00
Gary Tierney
112b8aab57
Add basic detekt configuration
2017-09-17 04:28:10 +01:00
Gary Tierney
40095d65e5
Add explicit stop() to async actions
2017-09-17 03:24:59 +01:00
Gary Tierney
0dc6879bdc
Refactor mining to use async actions
2017-09-17 03:13:03 +01:00
Trevor Flynn
a54485e263
Finish up porting mining plugin to Kotlin
2017-09-17 03:12:43 +01:00
Trevor Flynn
e61f4ef95a
Adding support for mining skill
2017-09-17 03:11:03 +01:00
Gary Tierney
cf0e3331e0
Add API plugin with common functionality
2017-09-17 03:11:02 +01:00
Gary Tierney
3a9e435189
Add an await function to the AsyncActionRunner trait
2017-09-17 03:11:02 +01:00
Gary Tierney
b4d951c7cc
Fix incremental script compilation
2017-09-16 21:49:45 +01:00
Gary Tierney
edcb72b474
Fix plugin test running with new gradle modules
2017-09-16 20:40:17 +01:00
Gary Tierney
36282cf81e
Remove plugins.gradle and factor into common extension
2017-09-16 18:49:06 +01:00
Gary Tierney
d323bcd69c
Fix plugin test runner
2017-09-16 13:19:55 +01:00
Gary Tierney
b32b98eb86
Share kotlin version config between buildSrc and project ( #353 )
...
* Share kotlin version config between buildSrc and project
* Use built-in Kotlin MessageCollector
2017-09-16 02:39:34 +01:00
Gary Tierney
cb14c32b71
Add kotlin port of the walk/run toggle plugin
2017-06-25 02:49:58 +01:00
Gary Tierney
8dc10e80bf
Add kotlin port of the emote-tab plugin
2017-06-25 02:44:15 +01:00
Gary Tierney
b2f0c7e4db
Add Kotlin port of the logout plugin
2017-06-25 02:39:46 +01:00
Gary Tierney
e605241893
Add on_button method to plugin scripts
2017-06-25 02:38:56 +01:00
Gary Tierney
9a8ed0d7a9
Port the walkto and following plugins to Kotlin
2017-06-24 18:24:13 +01:00
Gary Tierney
c15f18c609
Add plugin for consumable food/drink
2017-06-22 22:23:55 +01:00
Gary Tierney
97e85868ff
Add support for asynchronous Mob actions
...
Adds asynchronous implementations of the Action and DistancedAction
classes, allowing plugins to make use of suspendable functions in Kotlin
instead of creating mini state machines to keep track of state.
The asynchronicity works by creating coroutine backed Channels for each
asynchronous action and having them listen on "pulse" events from the
action scheduler. The action can then suspend execution until a pulse is
received or until some expensive operation has completed (i.e.,
pathfinding).
If an asynchronous action is still busy when a pulse arrives then the
number of missed pulses will be accumulated and sent to the action at
the next possible time.
The training dummy plugin has been updated to use asycnrhonous actions
as an example.
2017-06-20 07:31:07 +01:00
Gary Tierney
182de0330f
Allow multiple players per test
...
Refactors the test helpers to use receiver functions so multiple players
can exist in the world per test case. The AddFriendsTest is an example
of where this is needed.
Additionally, Hamcrest has been replaced with AssertJ for fluent
assertions.
2017-06-20 02:33:27 +01:00
Gary Tierney
b532168551
Remove test context from plugin testing framework
2017-06-19 17:14:24 +01:00
Gary Tierney
b536b2ed9d
Add start of test framework for plugins
...
Adds a basic testing framework suitable for plugins that start simple
Actions for players, which can be expanded on in the future. The
banking and training dummy tests have been updated to use this framework
and serve as samples.
2017-06-19 02:59:57 +01:00
Gary Tierney
d0fec15a84
Add missing name normalization to lookup plugin
2017-06-18 21:45:52 +01:00
Gary Tierney
1019cc8e6a
Check for conflicting plugin names at build-time
2017-06-18 21:37:44 +01:00
Gary Tierney
3f714831c7
Make plugin classes dependant on scripts
2017-06-18 21:25:04 +01:00