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