Advertisement
supersaiyansubtlety

player-interact.zs

Feb 16th, 2020
241
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. import crafttweaker.event.PlayerInteractEvent;
  2. import crafttweaker.event.PlayerInteractBlockEvent;
  3. import crafttweaker.event.PlayerInteractEntityEvent;
  4. import crafttweaker.event.EntityLivingUseItemEvent.Start;
  5. import crafttweaker.entity.IEntityLiving;
  6. import crafttweaker.entity.IEntityEquipmentSlot as slots;
  7. import crafttweaker.server.IServer;
  8. import crafttweaker.block.IBlock;
  9. import crafttweaker.entity.IEntity;
  10. import crafttweaker.world.IFacing;
  11. /* import crafttweaker.command.ICommand; */
  12. import crafttweaker.command.ICommandSender;
  13. import mods.ctutils.utils.Math;
  14. import crafttweaker.event.PlayerUseHoeEvent;
  15. import crafttweaker.entity.IEntityLivingBase;
  16. import crafttweaker.world.IBlockPos;
  17. import mods.contenttweaker.BlockState;
  18. import scripts.player_interact_statics as stats;
  19.  
  20. events.onPlayerInteract(function(event as PlayerInteractEvent)
  21. {
  22. if (event.player.world.isRemote()) { return; }
  23. print("player interact");
  24. /* print("Start is PlayerInteractBlockEvent: "~((event instanceof PlayerInteractBlockEvent) as string));
  25. print("Start is PlayerInteractEntityEvent: "~((event instanceof PlayerInteractEntityEvent) as string)); */
  26.  
  27. /* print("useBlock: "~event.useBlock);
  28. print("useItem: "~event.useItem); */
  29. /* print("item: "~event.item.definition.id); */
  30. print("current item: "~event.player.currentItem.definition.id);
  31.  
  32.  
  33. print("event block: "~event.block.definition.id);
  34. print("player blockPos y-1 block: "~event.player.world.getBlock((event.player as IEntity).position.getOffset(IFacing.down(), 1)).definition.id);
  35. print("event pos: "~event.x~", "~event.y~", "~event.z);
  36. print("player pos: "~(event.player as IEntity).position.x~", "~(event.player as IEntity).position.y~", "~(event.player as IEntity).position.z);
  37. /* print("event pos block: "~event.player.world.getBlock(event.position).definition.id); */
  38.  
  39. /* print("event.block == event.world.getBlock y-1 ?: "~((([event.block] as IBlock []) has event.world.getBlock((event.player as IEntity).position.getOffset(IFacing.down(), 1))) as string)); */
  40.  
  41. if (event.player.currentItem.definition.id == <minecraft:fire_charge>.definition.id)// &&
  42. {
  43. print("fire charge used!");
  44. if (event.block.definition.id == <block:minecraft:air>.getBlock().definition.id)// ||
  45. {
  46. print("fire charge used on air");
  47. server.commandManager.executeCommand(event.player, "summon small_fireball "~(event.player.x as string)~" "~(event.player.y+3 as string)~" "~(event.player.z as string)~" {direction:[0.0,0.0,0.0],power:[0.1,0.0, 0.0]}");
  48. }
  49. else
  50. {
  51. print("fire charge not used on air");
  52. /* if (([event.position] as IBlockPos []) has (event.player as IEntity).position) */
  53. if((event.x == (event.player as IEntity).position.x) &&
  54. (event.y == Math.floor(event.player.y)) &&
  55. (event.z == (event.player as IEntity).position.z))
  56. {
  57. print("fire charge used and pos's match");
  58. server.commandManager.executeCommand(event.player, "summon small_fireball "~(event.player.x as string)~" "~(event.player.y+3 as string)~" "~(event.player.z as string)~" {direction:[0.0,0.0,0.0],power:[0.1,0.0, 0.0]}");
  59.  
  60. }
  61. }
  62. }
  63. });
  64.  
  65.  
  66. /* val direction as
  67. eyeHeight
  68. heldEquipment
  69. rotationYaw
  70. rotationPitch
  71. lookingDirection */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement