太阳神三国杀lua吧 关注:2,630贴子:73,370
  • 11回复贴,共1

【新人求助】金蛇版

只看楼主收藏回复

如何实现(失去A标记并视为打出一张卡牌B)?


IP属地:江西1楼2013-03-05 17:01回复
    sgs.CardAsked


    IP属地:浙江2楼2013-03-05 18:33
    收起回复
      大概这样吧:
      --[[技能描述:回合开始阶段,你获得一个觉醒标记(别问为什么是觉醒标记);你弃掉一个觉醒标记视为你使用了一张顺手牵羊(无距离限制,懒得设置了)或者打出一张闪]]
      luaskillcard1 = sgs.CreateSkillCard
      {
      name = "luaskillcard1",
      on_effect = function(self, effect)
      effect.from:loseMark("@waked")
      local use = sgs.CardUseStruct()
      local card = sgs.Sanguosha:cloneCard("snatch", sgs.Card_NoSuit, 0)
      card:setSkillName("luaskill1")
      use.from = effect.from
      use.to:append(effect.to)
      use.card = card
      effect.from:getRoom():useCard(use,false)
      end,
      }
      luaviewas1 = sgs.CreateViewAsSkill
      {
      name = "luaskill1",
      n=0,
      view_filter=function()
      return false
      end,
      view_as=function(self, cards)
      return luaskillcard1:clone()
      end,
      enabled_at_play=function()
      return not (sgs.Self:getMark("@waked") < 1)
      end,
      enabled_at_response=function(self,player,pattern)
      return false
      end,
      }
      luatriggerskill1 = sgs.CreateTriggerSkill
      {
      name = "luaskill1",
      events = {sgs.EventPhaseStart,sgs.CardAsked},
      view_as_skill = luaviewas1,
      on_trigger = function(self,event,player,data)
      local room = player:getRoom()
      if event == sgs.EventPhaseStart then
      if player:getPhase() == sgs.Player_Start then
      player:gainMark("@waked")
      end
      else
      if not (data:toString() == "jink") then return false end
      if player:getMark("@waked") < 1 then return false end
      if not room:askForSkillInvoke(player, self:objectName()) then return false end
      player:loseMark("@waked")
      local jink = sgs.Sanguosha:cloneCard("jink", sgs.Card_NoSuit, 0)
      room:provide(jink)
      return true
      end
      end
      }


      IP属地:江苏3楼2013-03-05 19:12
      收起回复
        零牌视为技,打出一张牌没有Subcard,但是有技能名——然后就是触发技sgs.CardResponsed的时候,如果此牌的技能名为该技能名,就失去一枚标记


        IP属地:河南4楼2013-03-06 16:22
        回复