新元的無名殺擴展教程(一)技能(1-5)復(fù)習(xí)
一.單選題
1.以下那一種不是key:value的形式
A ? content:function(){}
B ? player.draw()
C ? group:["hunzi","yingzi"]
2.function是函數(shù)的意思,要使用函數(shù)必須在其后面加上(),請問哪一項未正確使用函數(shù)
A ?game.me.die()
B ?game.me.摸牌()
C ?我 摸牌
3.init:function(){}中的arguments[1]是
A ?init所在技能的id
B ?技能獲得者
C ?技能獲得者的storage[x](x為init所在技能的id)
4.如果一項技能有trigger:{global:"dying"},那么以下哪種情況可以觸發(fā)此技能
A? 關(guān)索可以觸發(fā)技能征南
B? 角色A死亡時
C??因蔡文姬而失去所有技能
5.有限制條件
filter:function(event,player){
return player.storage["xx"]
}
觸發(fā)時,以下哪種情況可以發(fā)動此技能
A?player.storage為{"xx":undefined}
B?player.storage為{"xx":false}
C?player.storage為{"xx":true}
6.有forced:true的技能是
A? 鎖定技
B? 限定技
C? 強制力技
7.以下代碼報錯,問解決方案:
filter:function(player,event){
return player.hasZhuSkill("xx")
}
A? 將player改成arguments[0]
B? 將()中的player和event互換位置
C? 檢查是否有拼寫錯誤
8.請問以下代碼的效果是
init:function(player,skill){
player.draw()
return
player.recover()
}
A? 獲得該技能時,摸一張牌并恢復(fù)一點體力
B? 獲得該技能時,恢復(fù)一點體力
C? 獲得該技能時,摸一張牌
9.已知intro:{name:"",content:function(storage,player,skill){}}中的content:function()于你長按標(biāo)記時觸發(fā)那么以下代碼的效果是(假設(shè)技能id為jianxiong):
intro:{
name:"新元",
content:function(storage,player,skill){
storage=skill
player.draw()
return skill
}
}
A? 技能擁有者的storage["jianxiong"]為:"jianxiong",技能擁有者摸一張牌,標(biāo)記內(nèi)容為:奸雄
B??技能擁有者的storage["jianxiong"]為:"jianxiong",技能擁有者摸一張牌,標(biāo)記內(nèi)容為:jianxiong
C??技能擁有者的storage["奸雄"]為:"奸雄",技能擁有者摸一張牌,標(biāo)記內(nèi)容為:奸雄
10.已知
①!相當(dāng)“非”,&&相當(dāng)于“且”,||相當(dāng)于“或”
②此時player.storage["xinyuan_1"]為false,player.storage["xinyuan_2"]為false,player恢復(fù)了體力
③有技能id為"xinyuan",技能組為:
group:["xinyuan_1","xinyuan_2","xinyuan_3","xinyuan_4"],
技能組中的所有技能的觸發(fā)時機為
trigger:{player:"recover"}
技能組中的四個技能的filter分別為
filter:function(event,player){
return?player.storage["xinyuan_1"]&&!player.storage["xinyuan_2"]
}
filter:function(event,player){
return !player.storage["xinyuan_1"]&&player.storage["xinyuan_2"]
}
filter:function(event,player){
return !player.storage["xinyuan_1"]||!player.storage["xinyuan_2"]
}
filter:function(event,player){
return player.storage["xinyuan_1"]||player.storage["xinyuan_2"]
}
問:此時哪項技能可以確定一定發(fā)動
A? xinyuan
B? xinyuan_1
C? xinyuan_2
D? xinyuan_3
E? ?xinyuan_4
二.多選題
11.已知
trigger:{
global:"phaseBegin"
}
content:function(){
trigger.player["xinyuan"]="你好呀"
player.draw(2)
trigger.player.recover()
player.loseHp()
}
設(shè)X為技能擁有者,Y為技能觸發(fā)者,則技能發(fā)動時,會發(fā)生
A? Y的storage["xinyuan"]變?yōu)?#34;你好呀"
B? Y失去一點體力
C? Y摸兩張牌
D? Y恢復(fù)一點體力
E? X摸兩張牌
F? X恢復(fù)一點體力
G??X的storage["xinyuan"]變?yōu)?#34;你好呀"
H? X失去一點體力
12.已知
①=為賦值符號,如player.storage["xinyuan"]為
{},則可通過賦值讓里面的內(nèi)容改變,如
player.storage["xinyuan"]=true
這樣player.storage["xinyuan"]就為true
②lib.skill是一個存儲技能數(shù)據(jù)的地方,如有技能xinyuan,則lib.skill.xinyuan(或者說lib.skill["xinyuan"],兩種形式等價)為
{
trigger:{
player:"phaseBegin"
}
content:function(){
player.draw()
}
}
現(xiàn)在執(zhí)行了以下代碼,問會發(fā)生什么
(注:jianxiong為奸雄的id,hunzi為魂姿非id)
lib.skill.jianxiong={}
lib.skill.hunzi.filter=function(){
return true
}
A? 標(biāo)曹操受到南蠻入侵的傷害后,發(fā)動技能奸雄,獲得南蠻入侵
B? ?標(biāo)曹操受到南蠻入侵的傷害后,不會觸發(fā)奸雄
C? ?未覺醒的孫策,準(zhǔn)備階段直接覺醒
D? ?未覺醒的孫策,永遠不能覺醒
三.填空題
13.init:function(){}和intro.content:function(){}中的arguments分別有_____項,_____項
14.請寫出三個trigger限定技中可能用到的key:value形式中的key(trigger,content,filter除外)_________? ?、_________? 、_________
15.請寫出你已知的和技能有關(guān)的函數(shù),
player.addSkill() 、_________? 、_________
16.已知usable:num(一個數(shù)字),是用于設(shè)定一個技能一回合最多用幾次的,round:num(一個數(shù)字),是用于設(shè)定隔幾輪發(fā)動一次的,則代碼:
usable:3,
round:1,
是隔____(2/3/6)_____(回合/輪)發(fā)動一次
四.附加題
已知
①var是用于聲明變量的,比如
var a
就聲明了一個變量a
②=是用于賦值的,以最后一次賦值為準(zhǔn),比如
var a
a=1
a=108
則a就為108
③形如key:value,如果有key:1且有以下賦值語句:
var a
a=key
則a的值就是1
④如果有key1:{},key2:{usable:1},現(xiàn)在用賦值語句
key1.usable=key2.usable
key1就變成了key1:{usable:1}
現(xiàn)在game.me因為某種原因,使得技能lib.skill.xinyuan={}(數(shù)據(jù)丟失),但是其中的數(shù)據(jù)都儲存在了game.me.storage.xinyuan中
game.me.storage.xinyuan內(nèi)容如下:
{
trigger:"phaseEnd"
filter:function(event,player){
return player.hp>10
}
content:function(){
player.draw(10)
}
}
求在控制臺輸入什么代碼(限三行)可以找回lib.skill.xinyuan丟失的數(shù)據(jù)