I am trying to make a script that draws a circle for minecraft using singleplayer commands. For starting, I tried to do the basics; here is my code:
importPackage(Packages.com.sk89q.worldedit.blocks); importPackage(Packages.com.sk89q.worldedit); var sess = context.remember(); var playerBlock = player.getBlockOn(); var other = playerBlock.setY(playerBlock.getY + 1); sess.setBlock(other, new BaseBlock(BlockID.CLOTH, argv[1]));
But when I run it, it says:
Failed to execute: The choice of Java constructor setY matching JavaScript argument types (string) is ambiguous; candidate constructors are: class com.sk89q.worldedit.Vector setY(int) (C:UsersDarcyAppDataRoaming.minecraftcraftscriptscircle.js#6) in C:UsersDarcyAppDataRoaming.minecraftcraftscriptscircle.js at line nuber 6
Any suggestions?
Advertisement
Answer
It seems playerBlock.getY
is a function, the result of which you should pass. Now you pass the function itself (which gets converted to it’s source code, i.e. a string).
var other = playerBlock.setY(playerBlock.getY() + 1);