Commit Graph
156 Commits
Author SHA1 Message Date
Luis C.M d86f571df6 PathNavigateFlying:
-Fixed pathfinder running into lava & water when it shouldn't.
FlyPathFinder:
-Simplified nodeTypeToOffset switch statement, removed unused function, and made air always return an open path node type.
EntityNPCInterface:
-Fixed "In Air" drowning type. Breathes underwater now.
EntityNPCFlying:
-Fixed NPCs still using flight movement when not being able to breathe.
ICustomNpc:
-Added canBreathe() function
2022-11-12 15:53:20 -06: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 8d3cd3fd82 Revert "Merge remote-tracking branch 'origin/dev' into dev"
This reverts commit 66edbcea80, reversing
changes made to 3fd962289c.
2022-11-06 01:25:28 -06:00
KAMKEEL 6ae465c5d0 Revert "Added several more functions to pre-existing classes:"
This reverts commit e9a8f8cebc.
2022-11-06 00:10:04 -04: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 0f5df933ae IPlayer:
-Added kick function
2022-08-02 13:50:18 -05:00
c0508383 2819c76d0a ICustomNpc:
-Fix for setRetaliateType
2022-07-27 18:47:20 -05:00
c0508383 9c9e9c0a40 IPlayer:
-Added dialog functions that use IDialog objects as parameters.
-Added quest functions that use IQuest objects as parameters.
2022-07-14 20:18:45 -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
c0508383 80916de553 IWorld:
-Added rayTraceEntities() functions, and added an offset parameter.

IEntityLivingBase:
-Made getLookingAtEntities() function use IWorld's rayTraceEntities() function, and added an offset parameter.
2022-07-10 23:17:17 -05:00
c0508383 e048496e4d IParticle:
-Replaced spawnOnEntity and spawnInWorld with a single function name "spawn". Deprecated the others.
2022-07-08 12:03:15 -05:00
c0508383 1110748504 IBlock:
-Fixed canCollide function, added maxVolume parameter.
2022-07-07 21:17:44 -05:00
c0508383 d54035687c IEntityLivingBase:
-Added stopOnBlock, stopOnLiquid, and stopOnCollision options for getLookingAtEntities()

IWorld:
-Added stopOnBlock, stopOnLiquid, and stopOnCollision options for rayCastBlock & rayCastPos
2022-07-07 20:49:03 -05:00
c0508383 4e5ed2d758 IEntityLivingBase:
-Fixed duplicate entity entries when using getLookingAtEntities()
2022-07-07 19:37:43 -05:00
c0508383 22e01bba1f CustomNpcs:
-Added ScriptOpsOnly config, which controls if only ops can see and edit scripts.
-Added ScriptDevs config, a list of the UUIDs of players who should be able to see and edit scripts. If left empty and ScriptOpsOnly is false, everyone can see and edit scripts with a scripter.

IPlayer:
-Added isScriptDev() function to check if the player can see and edit scripts.
2022-07-07 16:22:50 -05:00
c0508383 5fdef1cd0c IPlayer:
-Removed vector functions, moved to IEntityLivingBase

IEntityLivingBase:
-Added vector functions from IPlayer
2022-07-07 13:58:08 -05:00
c0508383 c554251165 IPlayer:
-Added getLookingAtEntities
2022-07-07 13:05:56 -05:00
c0508383 6a852d9578 IPlayer:
-Added getLookPos, which uses the rayCastPos function in IWorld.

IWorld:
-Added getEntitiesNear function with 3 double or one IPos parameter, and a range parameter for checking what entities are near a position.
-Added rayCastPos, for cases where rayCastBlock returns null.
2022-07-06 17:51:26 -05:00
c0508383 bd0d7cecf9 Fixed misspelling of "setRangedRange" from "setRangedRage". Kept old function name as a deprecated function not visible in the interface. 2022-07-05 16:31:39 -07:00
Luis C.M c8a3b7825d Particle packets are only sent to players in the particle's world now. 2022-07-02 13:07:23 -05:00
Luis C.M 79a703429c ISkinOverlay:
-Removed set/getLocation, only supposed to be used during rendering.
2022-07-02 06:22:43 -05:00
Luis C.M f3f209820c IParticle:
-Added glow option.
2022-07-02 03:10:11 -05:00
Luis C.M 256ba5c599 Removed ScriptFaction in place of IFaction. 2022-07-01 23:26:47 -05:00
Luis C.M 55b21de050 Added drowning types:
In Air,
In Water,
or
Never
to CNPCs.
2022-06-29 12:21:30 -05:00
Luis C.M 0aa9303f61 IPlayer:
-Removed 4 sendMessage functions that can already be done with Minecraft formatted codes.
2022-06-28 01:23:42 -05:00
Luis C.M 37e12b81d0 IPlayer:
-Implemented removeItem, removeAllItems, and inventoryItemCount functions with "ignoreNBT" and "ignoreDamage" parameters.
2022-06-28 01:10:38 -05:00
Luis C.M 1ca5a306fc IDBCPlayer:
-Items can be set in vanity or armor slots, based on a "vanity" boolean value in setItem().

ISkinOverlay:
-Renamed setScale to setTextureScale.
2022-06-19 15:18:13 -05:00
Luis C.M 40a210ce8f Added configurable limits to skin overlays and dialog images. 2022-06-14 23:27:15 -05:00
Luis C.M c7085f7acb IDBCPlayer:
-Added getItem(byte slot) to get IItemStack objects from DBC EP slots.
-Renamed setInventoryItem to setItem
2022-06-13 21:24:55 -05:00
Luis C.M ab5775f8f3 IDBCPlayer:
-Added void setInventoryItem(byte slot, IItemStack itemStack) function to set and remove (set null) items from DBC extra inventory.
2022-06-13 21:01:58 -05:00
Luis C.M dd207757ea IPlayer:
-Added disableMouseInput(long time, int... buttonIds) function.
2022-06-13 17:21:02 -05:00
Luis C.M fd1ac6dce4 Merge KAMKEEL-dev into dev. 2022-06-12 04:23:05 -05:00
Luis C.M 13ddc19522 Merge branch 'master' into dev
# Conflicts:
#	src/main/java/noppes/npcs/client/model/ModelMPM.java
#	src/main/java/noppes/npcs/client/renderer/RenderNPCHumanMale.java
2022-06-12 03:40:50 -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 b64ee1c93a Merge pull request #54 from 1whohears/dev
Some Extra Soul Stone Options
2022-06-09 02:35:22 -05:00
1whohears b7ef1da0d8 added npc.setMinPointsToSoulStone 2022-06-08 22:13:30 -05:00
1whohears 825c42fc52 npc.isSoulStoneinit 2022-06-07 12:31:49 -05:00
1whohears a675033d62 String data can't be null 2022-05-29 14:42:28 -05:00
1whohears fb0ff50994 added get set refuse soul stone
one may want an npc to not be able to be picked up by soul stone in any circumstance
2022-05-29 02:46:24 -05:00
Luis C.M fd0a99b3ed Revert "NPC Skin Changes" 2022-05-29 00:59:40 -05:00
1whohears 9fef65b194 get the name of the player who spawned this npc with soulstone 2022-05-28 23:40:01 -05:00
1whohears b18d0965f2 script player.sendMessage uses String as color parameter 2022-05-28 22:53:57 -05:00
Luis C.M 0028328db4 More fixes to setting NPC model types. 2022-05-28 07:06:38 -05:00
Luis C.M 968b43a321 setModelType() only takes 0 for Steve, or 1 for Alex as values. 2022-05-28 06:31:52 -05:00
Luis C.M 8d4a7ea0b6 More merge fixes 2022-05-27 15:54:12 -05:00
Luis C.M ec5fc71413 Merge branch 'master' into dev
# Conflicts:
#	src/main/java/noppes/npcs/scripted/ScriptFaction.java
#	src/main/java/noppes/npcs/scripted/ScriptWorld.java
#	src/main/java/noppes/npcs/scripted/entity/ScriptNpc.java
#	src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
#	src/main/java/noppes/npcs/scripted/interfaces/IEntity.java
#	src/main/java/noppes/npcs/scripted/interfaces/IWorld.java
#	src/main/java/noppes/npcs/scripted/interfaces/entity/ICustomNpc.java
#	src/main/java/noppes/npcs/scripted/interfaces/entity/IPlayer.java
2022-05-27 15:31:02 -05:00
Luis C.M 301e113be2 Added quest tracking, need to add objectives list and turn in info too. 2022-05-27 14:32:24 -05:00
1whohears 3d02ce3ce0 world.rayCastBlock uses double[] for parameters 2022-05-26 03:04:13 -05:00
1whohears 77ee403720 RoleFollowers will not despawn if they have an owner
RoleFollowers canDespawn field will be changed back to the value set by the player in the gui/api if they stop following a player
2022-05-26 03:00:49 -05:00