[樂(lè)游網(wǎng)導(dǎo)讀]我的世界手機(jī)版游戲中很多大型的建筑物的建造都需要js才能完成,否則的話,玩家的工作量就太大了,耗費(fèi)大量的精神和時(shí)間,下面給大家分享我的世界手機(jī)版JS函數(shù)表一覽。
我的世界手機(jī)版游戲中很多大型的建筑物的建造都需要js才能完成,否則的話,玩家的工作量就太大了,耗費(fèi)大量的精神和時(shí)間,下面給大家分享我的世界手機(jī)版JS函數(shù)表一覽。
JS函數(shù)全集(完整)
一.鉤子(hook)函數(shù)
當(dāng)執(zhí)行了特定動(dòng)作時(shí),這些函數(shù)會(huì)運(yùn)行并執(zhí)行其他函數(shù)
1.function useItem(x,y,z,itemId,blockId,side,itemDamage,blockDamage){}
當(dāng)進(jìn)行一次點(diǎn)擊時(shí)(如使用物品或放置方塊,食用食物不包括在內(nèi))會(huì)觸發(fā)這個(gè)函數(shù),并返回?cái)?shù)據(jù)。
x:被點(diǎn)擊方塊的x坐標(biāo)
y:被點(diǎn)擊方塊的y坐標(biāo)
z:被點(diǎn)擊方塊的z坐標(biāo)
itemId:點(diǎn)擊時(shí)手里拿的物品id(空手為0)
blockId:被點(diǎn)擊方塊的id
side:方塊被從哪個(gè)方向點(diǎn)擊
itemDamage:點(diǎn)擊時(shí)手里拿的物品附加值(傷害值)
blockDamage:被點(diǎn)擊方塊的附加值(傷害值)
2.function attackHook(attacker,victim){}
當(dāng)點(diǎn)擊或攻擊了一個(gè)生物mob(動(dòng)物,怪物,玩家(待確認(rèn)))時(shí)會(huì)觸發(fā)這個(gè)函數(shù),并返回?cái)?shù)據(jù)。
attacker:進(jìn)行了點(diǎn)擊或攻擊動(dòng)作的mob
victim:被點(diǎn)擊或攻擊的mob
3.function modTick(){}
每刻(1/20s 0.05s)執(zhí)行一次
4.function procCmd(cmd){}
在聊天里輸入以"/"開(kāi)頭的話文字并執(zhí)行(回車(chē))時(shí)會(huì)觸發(fā)
cmd:在聊天里輸入的以"/"開(kāi)頭的文字(不包含"/")
5.function newLevel(){}
當(dāng)世界被載入時(shí)(出現(xiàn)"Building terrain"時(shí))會(huì)觸發(fā)
6.function leaveGame(){}
當(dāng)離開(kāi)當(dāng)前世界(返回主菜單)時(shí)會(huì)觸發(fā)
7.function entityAddedHook(entity){}
當(dāng)一個(gè)新的實(shí)體被添加(包括箭,下落的方塊,點(diǎn)燃的TNT等)時(shí)會(huì)觸發(fā)
entity:被添加的自然實(shí)體
8.function entityRemovedHook(entity){}
當(dāng)一個(gè)實(shí)體(包括箭,下落的方塊,點(diǎn)燃的TNT等)消失或死亡時(shí)會(huì)觸發(fā)
entity:被移除的實(shí)體
9.function deathHook(murderer, victim){}
當(dāng)一個(gè)生物mod死亡時(shí)會(huì)觸發(fā)
murderer:造成死亡的實(shí)體
victim:死亡的實(shí)體
10.function levelEventHook(entity,eventType,x,y,z,data){}
當(dāng)門(mén)(木門(mén),柵欄門(mén),陷阱門(mén))被打開(kāi)或關(guān)閉時(shí)會(huì)觸發(fā)
當(dāng)羊吃掉草時(shí)觸發(fā)
睡覺(jué)時(shí)觸發(fā)
entity:動(dòng)作的實(shí)體(觀測(cè)數(shù)據(jù)。總是為0)
eventType:事件類(lèi)型(觀測(cè)數(shù)據(jù)。開(kāi)關(guān)門(mén)數(shù)據(jù)為1003,羊吃草的數(shù)據(jù)為2001,睡覺(jué)的數(shù)據(jù)為9800)
x,y,z:被點(diǎn)擊的門(mén)方塊的坐標(biāo),被吃掉的草方塊的坐標(biāo),睡覺(jué)時(shí)為(0,0,0)
data:未知(觀測(cè)數(shù)據(jù)。開(kāi)關(guān)門(mén),睡覺(jué)的數(shù)據(jù)為0,羊吃草的數(shù)據(jù)為2)
11.function blockEventHook(x,y,z,eventType,data){}
每三秒檢查所有箱子的開(kāi)關(guān)狀態(tài)
x,y,z:箱子的坐標(biāo)
eventType:事件類(lèi)型(觀測(cè)數(shù)據(jù)為1)
data:未知(觀測(cè)數(shù)據(jù)。關(guān)閉為0,打開(kāi)為1,打開(kāi)過(guò)程中為2(待確認(rèn))。檢查大箱子時(shí)第二個(gè)被放置的箱子數(shù)值改變,另一個(gè)一直為0)
12.function destroyBlock(x,y,z,side){}
當(dāng)一個(gè)方塊被破壞時(shí)會(huì)觸發(fā)
x,y,z:方塊的坐標(biāo)
side:方塊被從哪個(gè)方向破壞
二.文字顯示函數(shù)
也就是在游戲中現(xiàn)實(shí)文字的函數(shù),也比較常用。
1.print(text);
將數(shù)據(jù)顯示在浮動(dòng)窗口里
text可以是非實(shí)體變量或被"括起來(lái)的字符串
如print("text");
2.clientMessage(text);
將數(shù)據(jù)顯示在聊天框里
text可以是非實(shí)體變量或被"括起來(lái)的字符串
如clientMessage("text");
顏色 clientMessage(ChatColor.顏色+text);
例子:clientMessage(ChatColor.YELLOW + "It's the " + ChatColor.RED + "Red " + ChatColor.GREEN + "Green " + ChatColor.YELLOW + "show!");
顏色表:BLACK,DARK_BLUE,DARK_GREEN,DARK_AQUA,DARK_RED,DARK_PURPLE,GOLD,GRAY,DARK_GRAY,BLUE,GREEN,AQUA,RED,LIGHT_PURPLE,YELLOW,WHITE
三.獲取坐標(biāo)函數(shù)
即在游戲中獲取一個(gè)坐標(biāo),并使用。
1.getPlayerX();getPlayerY();getPlayerZ();
獲取玩家的x,y,z坐標(biāo)
2.getPlayerEnt();
獲取玩家的實(shí)體
3.getYaw(ent);
獲取實(shí)體ent的頭部所朝向(左右)的角度值
ent為空時(shí)默認(rèn)為玩家
面向z軸正方向是時(shí)為0±360n,面向x軸負(fù)方向時(shí)為90±360n
4.getPitch(ent);
獲取實(shí)體ent的頭部所朝向(上下)的角度值
ent為空時(shí)默認(rèn)為玩家
面向y軸正方向時(shí)為-90,面向y軸負(fù)方向時(shí)為90
5.getCarriedItem();
獲取玩家手里正在拿著的物品或方塊的id
6.getTile(x,y,z);
獲取坐標(biāo)為(x,y,z)的方塊的id
四.實(shí)體設(shè)置函數(shù)
對(duì)某個(gè)實(shí)體設(shè)置某種事件,并將其觸發(fā)。
1.setPosition(ent,x,y,z);
將一個(gè)實(shí)體ent的坐標(biāo)設(shè)置為(x,y,z)
ent:目標(biāo)實(shí)體
x,y,z:目標(biāo)坐標(biāo)
2.setPositionRelative(ent,x,y,z);
設(shè)置指定實(shí)體對(duì)于玩家的相對(duì)位置
ent:目標(biāo)實(shí)體
x,y,z:相對(duì)坐標(biāo)
3.setRot(ent,yaw,pitch);
將一個(gè)實(shí)體的頭部方向設(shè)為(yaw,pitch)
ent:目標(biāo)實(shí)體
yaw:水平角度
pitch:垂直角度
4.setVelX(ent,velocity);setVelY(ent,velocity);setVelZ(ent,velocity);
將一個(gè)實(shí)體ent的x/y/z軸速度設(shè)為velocity
ent:目標(biāo)實(shí)體
velocity:速度
5.setTile(x,y,z,blockID,damageValue);
將特定的方塊放置
x,y,z:放置的坐標(biāo)
blockId:放置方塊的id
damageValue:放置方塊的附加值(傷害值)
6.setPlayerHealth(halfHearts);
設(shè)置玩家的血量
helfHearts:半心量,20時(shí)為滿血,但可以更高(<=255)
7.setNightMode(boolean);
夜晚模式。此函數(shù)尚未被證實(shí)能正常使用,但存在于源碼中
boolean:布朗值,只能為true或false
五.實(shí)體生成(spawn)函數(shù)
如題,我不多說(shuō)。
1.spawnCow(x,y,z,"image");spawnChicken(x,y,z,"image");
在特定位置生成一只牛/雞,并將貼圖換成image
x,y,z:生成mod的坐標(biāo)
image:在assets文件夾下的圖片路徑
2.spawnPigZombie(x,y,z,heldItemID,"image");
在特定位置生成一只僵尸豬人,并將貼圖換成image
x,y,z:生成mod的坐標(biāo)
heldItemID:豬人手里拿的物品id
image:在assets文件夾下的圖片路徑
六.雜項(xiàng)函數(shù)
一些五花八門(mén)的雜項(xiàng)函數(shù)。
1.explode(x,y,z,radius);
在坐標(biāo)為(x,y,z)處引發(fā)一場(chǎng)半徑為radius的爆炸
2.rideAnimal(player,target);
讓player騎在target身上
player,target為實(shí)體
3.addItemInventory(ID,amount,damageValue);
在背包里添加amount個(gè)id為ID,附加值(傷害值)為damageValue的物品
amount可以為負(fù)
4.preventDefault();
阻止原有動(dòng)作
七.啟動(dòng)器(BlockLauncher-only)函數(shù)
這些函數(shù)只能在BlockLauncher啟動(dòng)器里使用
1.bl_spawnMob(x,y,z,mobID,"image");(停用,請(qǐng)使用Level.spawnMob)
在特定位置生成一個(gè)實(shí)體,并替換貼圖
x,y,z:指定位置
mobID:實(shí)體類(lèi)別id
image:在assets文件夾下的圖片路徑
2.bl_setMobSkin(mob,"image");
將指定實(shí)體的貼圖更換
mob:指定的實(shí)體(不是實(shí)體類(lèi)別)
image:在assets文件夾下的圖片路徑
八.Level函數(shù)
Level.explode(x,y,z,radius);
在坐標(biāo)為(x,y,z)處引發(fā)一場(chǎng)半徑為radius的爆炸
與explode(x,y,z,radius)相同
Level.getTile(x,y,z);
獲取坐標(biāo)為(x,y,z)的方塊的id
和getTile(x,y,z);相同
Level.setTile(x,y,z,blockID);
放置方塊
和setTile(x,y,z,blockID);相同
Level.getData(x,y,z);
獲取坐標(biāo)為(x,y,z)的方塊的傷害值(附加值)
Level.getWorldDir();
返回當(dāng)前世界所在的文件夾的名字
Level.getWorldName();
返回當(dāng)前世界的名字
Level.spawnChicken(x,y,z,"image");Level.spawnCow(x,y,z,"image");
在特定位置生成一只牛/雞,并將貼圖換成image
x,y,z:生成mod的坐標(biāo)
image:在assets文件夾下的圖片路徑
和spawnCow(x,y,z,"image");spawnChicken(x,y,z,"image");相同
Level.destroyBlock(x,y,z,shouldDropItem);
破壞一個(gè)方塊,擁有正常破壞時(shí)的所有特效
x,y,z:方塊坐標(biāo)
shouldDropItem:是否掉落被破壞的方塊本身。布爾值,只能為true/false
Level.dropItem(x,y,z,range,id,count,damage);
從指定坐標(biāo)掉落方塊
x,y,z:指定坐標(biāo)
range;掉落的距離
id:掉落物id
count:掉落物數(shù)量
damage:掉落物傷害值
Level.getAddress();
用途不明。。
返回值是實(shí)體。。
Level.getChestSlot(x,y,z,slot);
讀取指定箱子指定位置的物品id
x,y,z:箱子坐標(biāo)
slot:物品位置
Level.getChestSlotCount(x,y,z,slot);
讀取指定箱子指定位置的物品數(shù)量
x,y,z:箱子坐標(biāo)
slot:物品位置
Level.getChestSlotData(x,y,z,slot);
讀取指定箱子指定位置的物品傷害值(附加值)
x,y,z:箱子坐標(biāo)
slot:物品位置
Level.setChestSlot(x,y,z,slot,id,damage,amount);
向箱子指定位置放置物品
x,y,z:箱子坐標(biāo)
slot:物品位置
id,damage,amount:物品id,傷害值,數(shù)量
Level.getGameMode();
獲取游戲模式。生存為0,創(chuàng)造為1。
Level.setGameMode(mode);
設(shè)置游戲模式。生存為0,創(chuàng)造為1。
Level.getTime();
獲取當(dāng)前時(shí)間。0為正午,7200為日落,8280為晚上,13320為日出。
Level.setTime(time);
設(shè)置時(shí)間。0為正午,7200為日落,8280為晚上,13320為日出。
Level.getSignText(x,y,z,line);
獲取指定牌子的內(nèi)容,為空時(shí)返回null
x,y,z:牌子的坐標(biāo)
line:獲取的行數(shù),第一行為0
Level.setSignText(x,y,z,line,"text");
設(shè)置指定牌子的內(nèi)容
x,y,z:牌子的坐標(biāo)
line:設(shè)置的行數(shù),第一行為0
text:內(nèi)容。必須是字符串
Level.playSound(x,y,z,sound,volume,pitch);
播放聲音
x,y,z:指定坐標(biāo)
sound:MCPE中的聲音
volume:音量
pitch:角度,用途不明
Level.playSoundEnt(ent,sound,volume,pitch);
ent:自然實(shí)體
sound:MCPE中的聲音
volume:音量
pitch:角度,用途不明
Level.setNightMode(boolean);
夜晚模式。此函數(shù)尚未被證實(shí)能正常使用,但存在于源碼中
boolean:布朗值,只能為true或false
與setNightMode(boolean)相同
Level.setSpawn(x,y,z);
設(shè)置復(fù)活點(diǎn)
Level.setTile(x,y,z,blockID);
將特定的方塊放置
x,y,z:放置的坐標(biāo)
blockId:放置方塊的id
和setTile(x,y,z,blockID)相同
九.Player函數(shù)
Player.addItemInventory(ID,amount,damage);
在背包里添加amount個(gè)id為ID,附加值(傷害值)為damageValue的物品
amount可以為負(fù)
和addItemInventory(ID,amount,damage)相同
Player.clearInventorySlot(slot);
清除背包里指定位置的物品
slot:物品在背包的位置
Player.getInventorySlot(slot);
獲取背包里指定位置的物品id
slot:物品在背包的位置
Player.getInventorySlotCount(slot);
獲取背包里指定位置的物品數(shù)量
slot:物品在背包的位置
Player.getInventorySlotData(slot);
獲取背包里指定位置的物品傷害值(附加值)
slot:物品在背包的位置
Player.getSelectedSlotId();
獲取被選中的物品欄的id(slot)
Player.getArmorSlot(slot);
獲取身上的指定裝備id
slot:裝備位置
Player.getArmorSlotDamage(slot);
獲取身上指定裝備的傷害值(耐久)
slot:裝備位置
Player.setArmorSlot(slot,id,damage);
設(shè)置身上的裝備
slot:裝備的位置
id:裝備id
damage:裝備傷害值(附加值)
Player.getCarriedItem();
獲取玩家手里正在拿著的物品或方塊的id
和getCarriedItem()相同
Player.getCarriedItemCount();
獲取玩家手里正在拿著的物品或方塊的數(shù)量
Player.getCarriedItemData();
獲取玩家手里正在拿著的物品或方塊的傷害值(附加值)
Player.getEntity();
獲取玩家的實(shí)體
和getPlayerEnt()相同
Player.getX();Player.getY();Player.getZ();
獲取玩家的x,y,z坐標(biāo)
和getPlayerX();getPlayerY();getPlayerZ();相同
Player.setHealth(health);
設(shè)置玩家生命
health:半心量,20時(shí)為滿血,但可以更高(<=255)
和setPlayerHealth(halfHearts)相同
十.Entity函數(shù)
Entity.setFireTicks(ent,time);
使實(shí)體燃燒
ent:自然實(shí)體
time:燃燒時(shí)間,單位為秒
Entity.getAnimalAge(ent);
獲取動(dòng)物年齡
ent:動(dòng)物實(shí)體
取值為-24000到0,玩家一直為0
Entity.setAnimalAge(ent,age);
設(shè)置動(dòng)物年齡
ent:動(dòng)物實(shí)體
age:動(dòng)物年齡(-24000(幼年)到0(成年))
對(duì)敵對(duì)生物和玩家無(wú)效
Entity.getEntityTypeId(ent);
返回實(shí)體種類(lèi)id
Entity.getYaw(ent);
獲取實(shí)體ent的頭部所朝向(左右)的角度值
ent為空時(shí)默認(rèn)為玩家
面向z軸正方向是時(shí)為0±360n,面向x軸負(fù)方向時(shí)為90±360n
和getYaw(ent)相同
Entity.getPitch(ent);
獲取實(shí)體ent的頭部所朝向(上下)的角度值
ent為空時(shí)默認(rèn)為玩家
面向y軸正方向時(shí)為-90,面向y軸負(fù)方向時(shí)為90
和getPitch(ent)相同
Entity.setRot(ent,yaw,pitch);
將一個(gè)實(shí)體的頭部方向設(shè)為(yaw,pitch)
ent:目標(biāo)實(shí)體
yaw:水平角度
pitch:垂直角度
與setRot(ent,yaw,pitch);相同
Entity.remove(ent);
移除實(shí)體。如果玩家實(shí)體被移除,玩家將不可見(jiàn)且不可移動(dòng)
ent:自然實(shí)體
Entity.rideAnimal(player,target);
讓player騎在target身上
player,target為實(shí)體
和rideAnimal(player,target)相同
Entity.getHealth(ent);
獲取實(shí)體生命
ent:生物實(shí)體
Entity.setHealth(ent,health);
設(shè)置實(shí)體生命
ent:生物實(shí)體
health:半心量,20時(shí)為滿血,但可以更高(<=255)
Entity.setCarriedItem(ent,ID,int,DamageValue);
ent:實(shí)體。只能是玩家,僵尸豬人,小白(skeletons)
ID:物品id
int:未知值。數(shù)字
DamageValue:物品傷害值(附加值)
Entity.setSneaking(ent,boolean);
Entity.getX(ent);Entity.getY(ent);Entity.getZ(ent);
獲取實(shí)體坐標(biāo)
ent:自然實(shí)體
Entity.setPosition(ent,x,y,z);
將一個(gè)實(shí)體ent的坐標(biāo)設(shè)置為(x,y,z)
ent:目標(biāo)實(shí)體
x,y,z:目標(biāo)坐標(biāo)
和setPosition(ent,x,y,z);相同
Entity.setPositionRelative(ent,x,y,z);
設(shè)置指定實(shí)體對(duì)于玩家的相對(duì)位置
ent:目標(biāo)實(shí)體
x,y,z:相對(duì)坐標(biāo)
和setPositionRelative(ent,x,y,z);相同
Entity.setVelX(ent,vel);Entity.setVelY(ent,vel);Entity.setVelZ(ent,vel);
將一個(gè)實(shí)體ent的x/y/z軸速度設(shè)為vel
ent:目標(biāo)實(shí)體
vel:速度
與setVelX(ent,vel);setVelY(ent,vel);setVelZ(ent,vel);相同
Entity.spawnMob(x,y,z,mobID,"image");(停用,請(qǐng)使用Level.spawnMob)
在特定位置生成一個(gè)實(shí)體,并替換貼圖
x,y,z:指定位置
mobID:實(shí)體類(lèi)別id
image:在assets文件夾下的圖片路徑
與bl_spawnMob(x,y,z,mobID,"image");相同
Entity.setMobSkin(mob,"image");
將指定實(shí)體的貼圖更換
mob:指定的實(shí)體(不是實(shí)體類(lèi)別)
image:在assets文件夾下的圖片路徑
與bl_setMobSkin(mob,"image");相同
Entity.setRenderType(ent,type);
用不同的模型來(lái)偽裝實(shí)體
ent:自然實(shí)體
type:模型種類(lèi)(0.no idea 1.no override 2.點(diǎn)燃的TNT 3.玩家 4.掉落的物品 5.??? 6.雞 7.牛 8.豬 9.羊 10.??? 11.僵尸 12.小白(骷髏) 13.蜘蛛 14.苦力怕(jj怪)(替換困難,有概率失敗) 15.射出的箭 16.玩家(因?yàn)闆](méi)有名字標(biāo)簽,游戲會(huì)崩潰) 17.扔出的雞蛋 18.扔出的雪球 19.掛畫(huà)(游戲崩潰) 20.正在掉下落的方塊)
實(shí)體id:
10:雞
11:牛
12:豬
13:羊
32:僵尸
33:苦力怕(jj怪)
34:骷髏(小白)
35:蜘蛛
36:僵尸豬人
64:掉落的物品
65:點(diǎn)燃的TNT
66:下落的方塊
十一.1.5.5啟動(dòng)器及以上可用材質(zhì)函數(shù)。
Block.defineBlock(blockId,name,[textures/*六面材質(zhì)*/],0/*材料源id*/,true/*透明*/, int renderType/*未知*/)
Block.setShape(blockId,x1,y1,z1,x2,y2,z2)//形狀
Block.setDestroyTime(id,time);
Block.setExplosionResistance(id,res)//爆炸阻力,未實(shí)現(xiàn)
Block.setLightLevel(id,level);
Block.setColor(id,[color/*數(shù)組*/]);
Block.setStepSound(blockId,sourceId);//未實(shí)現(xiàn)
Block.defineBlock(blockId,name,[1,2,3,4,5,6/*六面材質(zhì),右上角為0*/],0/*材料源id*/,true/*透明*/, renderType)
renderType
0 標(biāo)準(zhǔn)
1 花
2 火把
3 火
4 流體
6 作物
7 門(mén)
8 臺(tái)階
10 樓梯
11 柵欄
13 仙人掌
14 床
18 玻璃板
19 植物的莖
21 柵欄門(mén)
專(zhuān)業(yè)的游戲下載、綜合門(mén)戶網(wǎng)站
Copyright 2009-2016 www.mmd178.cn 版權(quán)所有
鄂ICP備17018784號(hào)-1
熱門(mén)評(píng)論
最新評(píng)論