太阳神三国杀lua吧 关注:2,646贴子:73,407
  • 19回复贴,共1

【求助】关于国战甄姬

只看楼主收藏回复

求分享个V2的国战甄姬洛神lua,双将司马姬没法刷牌堆的那个


IP属地:福建1楼2015-12-06 22:57回复
    刷牌不好吗


    IP属地:广东来自Android客户端2楼2015-12-07 13:11
    收起回复
      2025-06-17 00:50:32
      广告
      LuaLuoshen = sgs.CreateTriggerSkill{
      name = "LuaLuoshen",
      frequency = sgs.Skill_Frequent,
      events = {sgs.EventPhaseStart, sgs.FinishJudge},
      on_trigger = function(self, event, player, data)
      local room = player:getRoom()
      local toGainList = sgs.IntList()
      if event == sgs.EventPhaseStart then
      if player:getPhase() == sgs.Player_Start then
      while player:askForSkillInvoke(self:objectName()) do
      local judge = sgs.JudgeStruct()
      judge.pattern = ".|black"
      judge.good = true
      judge.reason = self:objectName()
      judge.who = player
      judge.time_consuming = true
      room:judge(judge)
      if judge:isBad() then
      break
      end
      end
      end
      elseif event == sgs.FinishJudge then
      local judge = data:toJudge()
      if judge.reason == self:objectName() then
      local card = judge.card
      if card:isBlack() then
      toGainList:append(card)
      return true
      elseif card:isRed() then
      for _,id in sgs.qlist(toGainList) do
      player:obtainCard(id)
      end
      end
      end
      end
      return false
      end
      }
      失败了,不知道为什么收不到手牌里


      IP属地:浙江3楼2015-12-07 21:41
      收起回复
        我记得现在的甄姬是判定结束后一次性获取啊,而不是判定一张拿一张,这样就可以避免刷牌堆了。


        IP属地:重庆4楼2015-12-08 11:33
        收起回复
          local times = 0
          local dummy = sgs.Sanguosha:cloneCard("slash", sgs.Card_NoSuit, 0)
          while effect.to:askForSkillInvoke(self:objectName()) do
          times = times + 1
          local judge = sgs.JudgeStruct()
          judge.pattern = ".|black"
          judge.good = true
          judge.reason = self:objectName()
          judge.who = effect.to
          room:judge(judge)
          if judge:isGood() then
          dummy:addSubcard(judge.card)
          end
          if judge:isBad() or times == x then break end
          end
          effect.to:obtainCard(dummy)给你参考一下


          IP属地:北京5楼2015-12-12 21:45
          收起回复
            我发现神杀只有会改判的武将+甄姬时才会先洛神后拿牌,单甄姬或者甄姬随便搭一个武将的时候都是先拿牌再询问洛神(不管是标准还是国战)
            LuaLuoshen = sgs.CreateTriggerSkill{
            name = "LuaLuoshen",
            events = {sgs.EventPhaseStart, sgs.FinishJudge},
            on_trigger = function(self, event, player, data)
            local room = player:getRoom()
            local times = 0
            local dummy = sgs.Sanguosha:cloneCard("slash", sgs.Card_NoSuit, 0)
            if event == sgs.EventPhaseStart then
            if player:getPhase() == sgs.Player_Start then
            while player:askForSkillInvoke(self:objectName()) do
            times = times + 1
            local judge = sgs.JudgeStruct()
            judge.pattern = ".|black"
            judge.good = true
            judge.reason = self:objectName()
            judge.who = player
            room:judge(judge)
            if judge:isGood() then
            dummy:addSubcard(judge.card)
            elseif judge:isBad() or times == x then
            break
            end
            end
            player:obtainCard(dummy)
            end
            room:moveCardTo(dummy, player, sgs.Player_PlaceHand, false)
            elseif event == sgs.FinishJudge then
            local judge = data:toJudge()
            if judge.reason == self:objectName() then
            local reason = sgs.CardMoveReason(sgs.CardMoveReason_S_REASON_NATURAL_ENTER, self:objectName())
            room:moveCardTo(judge.card, player, sgs.Player_PlaceTable, reason, true)
            end
            end
            return false
            end
            }
            @youko1316 我参考昭烈改的,虽然技能效果是实现了,不过还有些细节没弄好,比如说每次展示的判定牌就一张,大神帮忙看一下吧


            IP属地:福建7楼2015-12-14 19:01
            收起回复
              我想这个技能要不写成判定后加入私人牌堆,结束后获得私人牌堆所有牌


              IP属地:浙江来自Android客户端8楼2015-12-15 00:07
              回复
                洛神:准备阶段开始时,你可以判定。若为黑色,你将其移出游戏,并可以继续判定,直至出现红色或不想判定为止。然后你需获得被你移出游戏的牌


                IP属地:黑龙江来自Android客户端9楼2015-12-15 12:59
                回复