Commit Graph
71 Commits
Author SHA1 Message Date
Luis C.M b592bb5d5e IPos objects now use double values in calculations for distance, addition, cross product, etc. 2023-07-07 17:51:51 -05:00
Kam 491e377a3e CAPITAL I cause it looks cool 2023-06-05 22:12:48 -04:00
Kam 3dc99dcf2c REMVOEOMOWAMo Arggg LOUIS! 2023-06-05 13:06:25 -04:00
Kam cf37e5c355 Just in case NULL Check 2023-06-04 22:03:58 -04:00
Luis C.M ad9c1b418d Added scriptPlayerCache (no null pointers this time) 2023-06-04 11:02:59 -05:00
Kam 59e1950c70 Remove PlayerScript Cache 2023-06-03 23:07:48 -04:00
Luis C.M 065b5eba16 NpcAPI:
-Cached scripted player objects so their tempdata is persisted after death.
2023-06-03 16:55:03 -05:00
Luis C.M 3a6255d98f NpcAPI:
-New function to create IPos objects from a long
IPos:
-fromLong() now mutates the calling IPos object
2023-06-03 14:32:43 -05:00
Luis C.M 6e4083a9cc Increased cache time for item stacks 2023-06-02 23:58:04 -05:00
Luis C.M 0c8a44ead3 Added scriptItemCache to clearCache function 2023-06-02 23:30:23 -05:00
Luis C.M f5ac14b93e Merge branch 'patch' into dev
# Conflicts:
#	src/main/java/noppes/npcs/client/gui/custom/components/CustomGuiButton.java
#	src/main/java/noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java
#	src/main/java/noppes/npcs/client/renderer/customitem/CustomItemRenderer.java
2023-06-01 16:35:04 -05:00
Luis C.M a8a0528275 ScriptWorld:
-Increased the accuracy of rayCastPos().
2023-05-31 23:59:11 -05:00
Luis C.M 118d79f3ad Added synchronization blocks to functions retrieving objects from CacheHashMaps and made the API use one for caching item stacks as well. 2023-05-31 00:35:57 -05:00
Luis C.M ab8e966f71 NpcAPI:
-Made item cache key removal a synchronized code block
2023-05-30 01:46:29 -05:00
Luis C.M 45a139ea68 NpcAPI:
-Further fix to concurrent modification exception
2023-05-30 01:37:08 -05:00
Luis C.M 65f3f8fc74 NpcAPI:
-Fixed concurrent modification exception
2023-05-30 01:33:18 -05:00
Luis C.M 500034f5f5 Merge branch 'patch' into dev 2023-05-30 01:28:02 -05:00
Luis C.M 895d20335f DataScript:
-Now doesn't create a new instance of NpcAPI
2023-05-30 01:27:34 -05:00
Luis C.M f260bb688a ScriptItemStack & NpcAPI:
-Created a cache for scripted item stacks
2023-05-30 01:25:20 -05:00
Luis C.M fd7f550316 IEntityItem added 2023-03-16 05:07:38 -05:00
Luis C.M 46d668f44c Added IProjectile and its events. 2023-03-16 02:51:40 -05:00
Luis C.M 0787a71197 Removed animation IDs, added animation controller. 2023-01-26 14:14:13 -06:00
Luis C.M 60f8645c84 Created animation controller 2023-01-25 23:18:27 -06:00
Luis C.M f61001d32a Changed mixin to support players with animations better. Rotations and pivots are now saved as and use floats. 2023-01-17 13:08:10 -06:00
Luis C.M be18e756fc Animation overhaul, along with animation changes to the API. 2023-01-16 13:53:15 -06:00
KAMKEEL bda76bafe6 Optimize Imports 2023-01-12 21:33:06 -05:00
KAMKEEL 6e92f08851 Config Overhaul 2023-01-07 00:21:08 -05:00
Luis C.M 5d520837b1 Implemented a way to play ISound(s) to players without using a sound ID. 2022-12-21 19:07:19 -06:00
Luis C.M a895c8bd24 NpcAPI:
-Added millisToTime(long) and ticksToTime(long) functions to return time formatted strings from long values.

IPlayerQuestData:
-Added last completed time functions for repeating quests.

IQuest:
-Added repeat functions for repeating quests.

ServerCloneController:
-Fixed cloned NPCs having identical UUIDs.
2022-12-20 09:21:39 -06:00
Luis C.M 3d498814f9 Implemented custom commands. 2022-12-18 15:54:14 -06:00
Luis C.M 6f33b9df92 NpcAPI:
++ hasGlobalObject(String)
2022-12-16 19:36:39 -06:00
Luis C.M 7a715ef308 NpcAPI:
Added functions for adding keywords to global script running
++ addGlobalObject(String,Object)
++ removeGlobalObject(String)
++ getEngineObjects()
2022-12-14 17:53:57 -06:00
Luis C.M 3945e7ffb8 NpcAPI:
Added createItemFromNBT(INbt) function.
2022-12-14 16:44:13 -06:00
KAMKEEL be9ae94163 Start API Branch 2022-11-15 15:25:53 -05:00
Luis C.M c8a8e866cb IPos:
-Added crossProduct(IPos), divide(scalar), and to/FromLong functions.

NpcAPI:
-Added getAllInBox(from,to)

IBlock:
-Added setPosition functions

IBlock, IPos, IEntity, IWorld: -Added a readable toString() function
2022-11-06 15:08:58 -06:00
Luis C.M 0291fd44a5 Merge remote-tracking branch 'origin/louis' into dev 2022-11-06 01:27:45 -06:00
Luis C.M 5cb5770a20 Fixed NullPointerException crash from breaking blocks that have no tile entities. 2022-11-06 01:23:54 -06:00
Luis C.M 3fd962289c NpcAPI:
-Added getPlayer() function
-Added getChunkLoadingNPCs function
-Added getCurrentPlayerCount, getMaxPlayers, and kickAllPlayers, isHardcore, getFile(path), and getServerOwner functions
2022-11-06 01:59:34 -05:00
Luis C.M e9a8f8cebc Added several more functions to pre-existing classes:
-Spawner, Transport, Healer, Guard, Bard jobs received more functions.
-Added more functions to the transporter role.
-IRole: Added getNpc() function.
-IAnimal, IEntityLiving, and IEntityLivingBase received more functions from their MC counterparts.
-Nearly every function with that takes position/vector parameters now has an equivalent with IPos as a parameter instead.
2022-11-05 20:19:14 -05:00
c0508383 d1762654ba ISound:
-Allows for the changing of several sound attributes, including volume, pitch, repeating, etc.

NpcAPI, IPlayer, IWorld:
-Added more sound functions, with sounds that can be stopped and started based on an ID.
2022-07-13 19:27:27 -05:00
Luis C.M 256ba5c599 Removed ScriptFaction in place of IFaction. 2022-07-01 23:26:47 -05:00
Luis C.M 496961ccc5 NpcAPI:
-Added getObjectSize() function for calculating object sizes.

RenderCNPCPlayer:
-Added gender & age/child compatibility for DBC rendering.
2022-07-01 17:02:40 -05:00
Luis C.M 7d0b124422 Npc API:
-Added natural spawn controller support
2022-06-29 00:06:38 -05:00
Luis C.M 5b3c6d9e3f NpcAPI:
-stopServer() calls initiateShutdown() instead of stopServer(), stops crashes on stop.
2022-06-13 21:31:42 -05:00
Luis C.M 63a1525ee2 API Changes:
-Implemented interfaces for all jobs & roles.

ScriptPlayer:
-Added getData() function, which returns player data objects.

IPlayerData: New class that holds all player data for modification.
-Holds dialog, bank, quest, transport, faction, item giver, and mail data.
-Also holds companion data, with functions has/set/getCompanion, and a getCompanionID function to differentiate companions.
2022-06-12 01:26:23 -05:00
Luis C.M 8f16e6b20f Added IDialogImage, a scripted object which is used by IDialog. Used to add dialog images.
IDialog:
-Added several new functions for dialogs' new visual attributes, as well as a way to add, get, create, remove, and clear dialog images.

Global NPC events:
-Added fields and variables from the old ScriptEvent events, in preparation to replace the old events with NpcEvent instances on local NPC scripts.
-Fixed issue where some event hooks would run on remote worlds.

Global NPC killed event:
-Added droppedItems and expDropped fields.

IWorld and NpcAPI:
-Now always uses a non-remove WorldServer object to create ScriptWorld objects and add them to the world cache.
2022-06-10 17:25:58 -05:00
Luis C.M 213d69f146 Function added
NpcAPI:
-Added stopServer() function.
2022-05-31 18:54:11 -05:00
Luis C.M b6c62332ed Fixed SkinOverlay objects not having their parent object initialized correctly. 2022-05-23 20:47:32 -05:00
Luis C.M 6220a8ce14 -Overlays for players and NPCs are now grouped in an "overlay handler" object, similar to how you retrieve timers.
-Fixed client NPC overlay updates.
2022-05-23 20:41:32 -05:00
Luis C.M b9266c3cc5 Added plenty more documentation for the javadoc. 2022-05-17 18:02:09 -05:00