core.txt 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. event.load("human_hurt");
  2. event.load("entity_click");
  3. event.load("inv_click");
  4. timestamp = map.new(); //TimeStamp for SkillShop
  5. msg("dev", "§bQuests: §rSpawn loaded.");
  6. @wait
  7. wait();
  8. ignoreGoto(event);
  9. goto("wait");
  10. @human_hurt
  11. if(!isPlayer(entity)) {
  12. goto("wait");
  13. }
  14. player = entity;
  15. entity = human;
  16. goto("human_core");
  17. @entity_click
  18. if(hand == "OFF_HAND") {
  19. goto("wait");
  20. }
  21. if(entity.getType(entity) != "human") {
  22. goto("wait");
  23. }
  24. goto("human_core");
  25. @human_core
  26. if(player.hasQuest2(player)) {
  27. goto("wait");
  28. }
  29. entity_name = entity.getName(entity);
  30. if(entity_name == "Tutorial") {
  31. /*script = script.start("story/spawn/tutorial", "utils/u_quest", "utils/u_general");
  32. if(script == null) {
  33. waitfor(1);
  34. msg("dev", "quest waitfor");
  35. }
  36. quest.addPlayer(script, player);
  37. script.setVar(script, "player", player);
  38. script.setVar(script, "script", script);
  39. script.setVar(script, "quest_player_uuid", player.getUuid(player));
  40. script.callEvent("quest_start", script);*/
  41. msg(player, "Coming soon");
  42. goto("wait");
  43. }
  44. if(entity_name == "Marvin") {
  45. script = script.start("story/spawn/findmentos", "utils/u_quest", "utils/u_general");
  46. if(script == null) {
  47. waitfor(1);
  48. msg("dev", "quest waitfor");
  49. }
  50. quest.addPlayer(script, player);
  51. script.setVar(script, "player", player);
  52. script.setVar(script, "script", script);
  53. script.setVar(script, "quest_player_uuid", player.getUuid(player));
  54. script.callEvent("quest_start", script);
  55. goto("wait");
  56. }
  57. if(entity_name == "Mentos") {
  58. s = script.get("Stone Mage");
  59. if(s != null) {
  60. msg.quest(player, entity_name, 1, 1, "Another player is in my dream palace.");
  61. goto("wait");
  62. }
  63. script = script.startNamed("Stone Mage", "story/spawn/stonemage", "utils/u_quest", "utils/u_general");
  64. if(script == null) {
  65. waitfor(1);
  66. msg("dev", "quest waitfor");
  67. }
  68. quest.addPlayer(script, player);
  69. script.setVar(script, "player", player);
  70. script.setVar(script, "script", script);
  71. script.setVar(script, "quest_player_uuid", player.getUuid(player));
  72. script.callEvent("quest_start", script);
  73. goto("wait");
  74. }
  75. if(entity_name == "Stone Mage") {
  76. if(time.getMillis() - map.getOrDefault(timestamp, player.getUuid(player), 0) < 120000) { //2 Minutes
  77. skill.showShop(player, "Subcutaneous Inventory", "Head Hunter", null, null, null, null, null, null, null);
  78. } else {
  79. msg.quest(player, entity_name, 1, 1, "You have to finish some tasks first. Mentos knows more about it.");
  80. }
  81. goto("wait");
  82. }
  83. goto("wait");
  84. @inv_click
  85. if(inv_name != "Skillshop") {
  86. goto("wait");
  87. }
  88. if(item.getType(item) == "minecraft:air") {
  89. goto("wait");
  90. }
  91. skill_name = item.getName(item);
  92. if(skill.isPermanent(skill_name)) {
  93. amount = skill.getAmount(player, skill.getTechName(skill_name));
  94. if(amount >= 1) {
  95. goto("wait");
  96. }
  97. }
  98. cost = skill.getCost(skill_name);
  99. if(!hasEnoughMoney(player, cost)) {
  100. msg.quest(player, "Stone Mage", 1, 1, "You have not enough money.");
  101. goto("wait");
  102. }
  103. subMoney(player, cost);
  104. skill.addAmount(player, skill.getTechName(skill_name), 1);
  105. inv.setItem(inv, inv_slot, skill.getShopItem(player, skill_name));
  106. inv.update(player);
  107. goto("wait");