Commit Graph

53 Commits

Author SHA1 Message Date
Nyutanislavsky d0913e42ce
Heg (#254)
1. 修复木马、真名无懈可击
2. 增加亮将、暗将时机
3. 增加武将珠联璧合关系
4. 增加武将选择框禁止替换
5. 增加变换武将不改变体力上限
6. 增加亮将禁止、不计入距离和座次的MarkEnum,相应的player函数
7. 状态技默认锁定技
8. 修复拼点
9. 增加出牌阶段亮将技能
10. 增加暗置武将函数

---------

Signed-off-by: Mechanel <nyutanislavsky@qq.com>
2023-08-24 21:37:06 +08:00
xxyheaven 4284336825
card fix (#251)
1、补充默认自己为目标的卡牌的prohibit判定;
2、将有同名延迟锦囊时不能成为该锦囊的目标移动到prohibit判定里;
3、补充延迟锦囊牌及装备牌的mod_target_filter;
4、修正濒死求桃逻辑,必须所有牌名均不能使用才跳过询问
2023-08-13 12:34:36 +08:00
Ho-spair 64127bffb6
Abort area (#249)
Co-authored-by: notify <notify-ctrl@qq.com>
2023-08-13 02:25:04 +08:00
notify 32844bc394 插件哟,boolean就让他默认可以为nil好不好呀 2023-08-11 03:30:59 +08:00
YoumuKon aa05984522
各种bug fix (#241)
- 修复只观顶时出错的bug
- 修复主公框和正常框有重复将的bug
- 添加getN,帮助获得数组前/后X项

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-08-11 03:24:22 +08:00
notify a82b8c1b0a
Nfeature (#243)
- 15秒后其他人可以将房主踢出
- event中的从room.lua复制过来的self都规范成room
- 删了feasible的deprecate警告
- 虚空印卡

关于虚空印卡的说明:
* 印的卡id为负数,但依然属于实体卡。
* 这也就是说今后判断虚拟牌的依据是id == 0而不是 <= 0。
* 不过其实虚拟牌的id自古以来就固定是0啦,所以不用担心。
* 虚空印的卡自然只和当前运行的房间有关。
* 虚空印卡的id从-2开始,每印一张其id便减少1。
* 之所以不从-1开始是因为UI把-1认定为未知牌。Bot的玩家id也从-2开始,这是一个道理。
* 除此之外,印出的卡就如同一张普通的实体卡一样,洗入牌堆啥的都没问题,用来作其他虚拟卡的子卡也没啥问题。
* 坐等后面测试出bug吧,当然我希望直接不出bug。
2023-08-11 03:19:59 +08:00
notify 0745863863
Heg (#242)
- 游戏结束时离线玩家增加逃率
- 退出房间时取消准备状态
- 副技能的 `main_skill`
- 预亮相关优化
- 自定义身份,图从拓展包随便找一张
- 无懈可击使用时带1200毫秒延迟
- 未开始的房间显示开启的所有牌堆,衍生牌灰色字体化
- 可以随意打开fk.rep文件并播放录像
- 服务器Shell新增重置密码命令
2023-08-09 22:25:15 +08:00
YoumuKon 7fd39264ee
bugfix (#229)
- 为需要无视描述的请求添加-tmp标签(……)
- 修改铁索相关描述
- 修复了可以通过取消目标以跳过exclusive_targets的bug
- 修复了观星只控顶时还有底部标签的bug
- 修复了没有correct_func时的报错
- 修复了一个人且未分胜负时无限循环的bug
- 将AOE的函数调到了Util内方便其他DIY快速调用
- 将AskForAddTarget转正
- 主动技添加modTargetFilter,负责重新定义目标(借刀摆烂了)
- 游戏模式添加countInFunc(room),负责检测本局游戏是否可以纳入胜率统计(默认true)

---------

Co-authored-by: Nyutanislavsky <nyutanislavsky@qq.com>
2023-08-02 02:19:51 +08:00
notify 0e8005601f more nil 2023-07-14 23:12:46 +08:00
YoumuKon a812af8d97
bug fix和黑名单 (#223)
- 修复了旁观skill出错的bug
- 为模式和扩展包提供相互之间的黑/白名单
2023-07-14 22:17:54 +08:00
YoumuKon e9a81cd185
卡牌标记清除后缀+pattern相关fix (#220)
- 修复了翻译只替换一次参数(%src之类的)的bug
- 添加了卡牌专属的清除后缀,现在cheat获得的牌自带信仰之力
- 补齐了neg判定相关的函数
- 添加multiple_targets,标记多目标牌
- 添加复原武将牌的描述
- 房间名带省略号

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-07-11 23:16:46 +08:00
YoumuKon 2ab9ad017a
堆一堆bugfix (#218)
- 重新写了固定距离计算方法,目前按先到先得处理(以先触发的技能为准)
- 距离函数在传入死人时会返回-1,一切与此相关的函数应当返回false
- 修复了自己挖的Player:canUse
- 修复了skillTimes的变量名(嗯)
- 修复了exclusived无法过滤目标的错误

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-07-08 01:05:54 +08:00
Ho-spair fecc96965d
Resort cards & Surrender (#217) 2023-07-02 20:39:42 +08:00
YoumuKon 3aef53d16c bypassDistancesCheck + bugfix (#204)
- 重命名isUnlimited/unlimited,因为未正式上线所以无关紧要(?)
- 新增bypassDistancesCheck/bypass_distances,实现真正的无距离限制
- 修复早退导致的报错bug

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-06-20 14:17:20 +08:00
YoumuKon d5330d5bed
isInLimit等各种功能 + bugfix (#201)
没来得及转远程url,这是最后一次从fork来的更新了

- 修复了fk.currentresponsepattern = nil的时机
-
添加unlimited/withinTimesLimit和withinDistanceLimit,整合并实现真正的“无次数限制”/“无距离限制”
- 给观星框上了标题(暂时不往上加标题变量)
- 青龙刀会临时追加“对此人不限次数”+“对此人不限距离”的标记,响应(包括取消)后清除
- 添加了“对某人无次数/距离限制”的标记及对应两个global技能
2023-06-19 00:20:50 +08:00
YoumuKon e2c4d326c5
选择性删除Interaction等各种功能 (#193)
- 给interaction喂nil或者空choices可以禁止出interaction小黑框
- 可以给主动技/视为技上prompt
- 装备的技能现在会独立显示在最下方
2023-06-16 10:58:28 +08:00
Ho-spair b2a963739b
Fix invalidity skill (#190)
- 修复技能失效技;
- 新增全局技能以令非锁定技失效仅使用标记即可实现。
2023-06-11 12:45:12 +08:00
Nyutanislavsky 23762e1600
Enhancement (#170)
1. 手牌上限显示:体力值为负数和手牌上限为无限时显示优化
2. 观星新增提示,修复观星
3. 增加不计入手牌上限技
4. 修复变更武将
5. 修复奸雄和救援
6. 修复选角色的cancelble
7. 增强谋徐盛

---------

Signed-off-by: Mechanel <nyutanislavsky@qq.com>
2023-06-04 19:39:20 +08:00
Ho-spair 5128100083
modify process & quest skill (#166) 2023-05-28 18:45:54 +08:00
Ho-spair a7e3ad0f19
Switch skill (#148)
- 实现转换技;
- 将特殊的标记名称注册在mark_enum.lua文件;
- 标记值在UI的显示支持解析数组;
- 将觉醒技的觉醒条件分离至canWake函数;
- 修复一系列bug;
- 在Room类新增从牌堆、弃牌堆中随机获取牌的方法。
2023-05-13 14:20:34 +08:00
Nyutanislavsky 8d87fbbf09
Fixbug (#144)
视为技添加frequency(为了显示限定技)
修复主动技canUse (by @Ho-spair )
Exppattern增加子类别
增加体力上限相关的log
增加求桃prompt
修复许褚、夏侯惇(by @xxyheaven )和赵云
移除观星一张牌直接放在牌堆顶
添加获得牌的log(和摸牌区分开)
封装重铸(和以技能重铸)函数

---------

Signed-off-by: Mechanel <nyutanislavsky@qq.com>
2023-05-13 13:23:18 +08:00
Ho-spair 19a2cc5ed7
Initial kingdom choosing (#143)
- 实现副势力概念,用于应对双势力机制;
- 完善神将及拥有副势力的武将开局选择势力的机制;
- 完成势力技概念;
- 实现ViewAsSkill在响应时对使用和打出的区分。

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-04-30 18:55:59 +08:00
notify 1b8447acbe
Fixbug (#128)
修倾国再点一下技能按钮会直接视为被取消
修服务端Log没有日期
修房间右上角没有轮数、对局时长、牌堆剩余牌数
修Linux上Log没有彩色字体
修短标记也会占用整整一行显示
修只有一张子卡的虚拟牌是无花色
修无花色牌不在牌面显示颜色
2023-04-20 00:19:48 +08:00
Nyutanislavsky ba8aae852d
Fixbug (#123)
【杀】的residue_func无效bug
【顺手牵羊】的distance_limit_func无效bug
重铸的moveReason调整为置入弃牌堆

---------

Signed-off-by: Mechanel <nyutanislavsky@qq.com>
2023-04-18 12:57:09 +08:00
notify 9ae119028c
Enhancement (#116)
给Card堆一个伤害牌属性
能添加虚拟牌为子卡
封装了“视为使用xx牌”的函数
护甲机制
interaction现在可以作为一个函数,以实现动态化
冰属性伤害
使用牌堆中的牌不再报错
2023-04-13 20:17:39 +08:00
notify a735013411
Fixbug (#115)
修流离锁定技
修斧子弃自己
修顺手空城卡死
修旁观者id是自己的
修旁观者再开新局就闪退(或许吧)
修拼点报nil
修询问无懈时旁观者被卡在外面
修Room的请求队列不清理干净
2023-04-12 22:28:19 +08:00
notify 28436eb9d4
Comment (#114)
翻译注释/加注释
2023-04-12 20:51:09 +08:00
notify 533cc1a464
Card limitation (#111)
禁止使用打出弃置
Fk.currentResponseReason
FilterSkill加player参数
2023-04-10 15:55:06 +08:00
notify 9a951fdbfe
Spdx license (#109)
在所有代码中添加了许可证标记头
2023-04-09 13:35:35 +08:00
notify 4833d202b1
Wake limit (#101)
显示限定技标记的UI。
原理上也能显示觉醒技,我也做了显示觉醒技,但没测试。
转换技、使命技也是这样显示的,但先不提就是了,先合一发
2023-04-05 01:05:06 +08:00
notify 09dd59bebf
Extra interaction (#100)
为主动技/视为技提供了自定义额外交互的能力
可以在交互时候进行额外的UI操作
以及提供了一个UI组件,总之参考谋徐盛
2023-04-05 00:49:54 +08:00
notify a1ae83c562
Sphinx doc (#86)
将文档系统改成Sphinx,并增加了新CI
2023-03-26 17:32:45 +08:00
Ho-spair dfe3e8b2e7
Qing gang sword & zhu que fan (#85)
- 完成【青釭剑】效果
- 初步完成技能失效技
- 完成【朱雀羽扇】
- 修改“连环状态”传导逻辑
- 修改八卦阵匹配的pattern
2023-03-20 20:49:23 +08:00
notify 16b6800811
New cards (#84)
火攻
铁锁重铸
2023-03-20 20:15:24 +08:00
notify 6ae86a1e3e
Gamemode (#75)
提供拓展游戏模式的接口
2023-03-14 00:12:02 +08:00
notify 861d87849a
Fixbug (#69)
修了很多bug 但我自己都不确定是不是修了
2023-03-07 10:21:56 +08:00
notify a579cf2a59 Ci: check space and LF (#55) 2023-02-26 16:51:29 +08:00
notify 9ac89caa1f Random AI (#54)
* android: dont copy RSA key and test.lua(generated by fkp)

* remove debug code

* ai think

* fixbug: 100% cpu per thread

* init ai

* fix bug, next step is to remove all feasible

* remame vscode -> lsp

* add some lsp comment

* rewrite feasible

* Random AI

* fixbug: chooseplayer

* liuli

* move checkNoHuman to waitForAiReply

* prototype for cardLimitation skill

* add Exppattern:Parse to static.lua

* remove unnecessary static
2023-02-26 15:01:14 +08:00
notify afb537a661 Merge 'standard' (#53)
* todo

* todo.md

* doc for move cards

* weapons excluding qinggang

* equip sound and emotion

* remove silence on the starting of using skill

* add audio skill for TMD equip

* fixbug: running and observing

* when PreUseCard is broken, jump to move cards to discardPile

* doc for diy

* addToPile

* viewPile (WIP)

* fix git bug

* auto update packages when md5 fail

* use thread when updating pack

* correct status() handling

* update fkp

* remove PKGBUILD since it's presented in AUR repo

* fix fkp md5 bug

* extensible qml

* set bigAnim's z to 999

* nioh sheild

* lijian

* now mod can return nil

* if dmg.nature == nil then = normal

* disable notifyUI when qWarning

* fix lijian and gender problem
2023-02-21 13:44:24 +08:00
Ho-spair 3fe92b4344 standard equip skills (#49)
* install and uninstall equip skill

* complete pr; filter skill viewAs equip

---------

Co-authored-by: notify <notify-ctrl@qq.com>
2023-02-15 21:20:40 +08:00
notify cc271bcdf8 Standard equips (#50)
* support fkp

* get default setting in qml

* correct zixing

* mark

* TODO: parse fkp in c++

* scale the drawer

* free assign

* fix free assign bug

* add submodule for official generals

* generate fkp in cpp code

* use UTF-8 in windows conhost

* use onUse for regular skill

* active skill for fkp

* add fkp function; change data for DMG and Heal

* add cancelable to askForDiscard

* don't let generals naked

* config bg and bgm

* fix exists for win

* bugfix: rewardandpunish

* fkp: vs skill

* room config

* observe

* god_salavation

* fkp: judge

* add read storage permission for android build

* remove submodule fk_official

* remove include/

* use a submodule as include directory

* libgit2

* remove debugging 'downloadNewPack'

* libgit2.dll for Windows

* rewrite system_enum, disable dangerous function

* fix bug in trigger()

* filter skill

* filter judgement card

* add about page for git2

* very basic general detail

* FKP: status skill

* libgit: android test

* libgit: build for android

* 1

* libgit2.dll

* android: load qm file after copy asset

* filter skill: if no filter skill then remove filtered card

* allow warning and critical to show a popup, and fix warnings from QML

* resource: move general audio/image to packages/

* move assets of cards

* FKP: modify

* use sqlite db to manage packages

* packman cli

* packman gui

* use Popup for error dialog

* android full screen note

* fix android ssl problem
2023-02-15 19:54:35 +08:00
notify c6d883eccf Standard skills (#48)
* huatuo

* biyue

* gender of player

* let tablepile smaller

* card emotions

* remove getOtherPlayers

* guicai

* skill audio

* card audio

* death audio

* bgm

* damage sound

* local bgm

* add more skill audio

* android: dont link to quickcontrol2

* android: fix ifndef

* yield only when need

* modify cpp according to clazy

* reduce malloc times

* revert yield

* qingguo

* fix back to lobby

* use compact json in cpp

* notifySkillInvoke animation

* util: string2json

* losehp; tablepile fix

* judge result animation

* add scrollbar for logedit

* add lock on waitForReply

* fix: virtual jink has no effect

* tiandu

* fix: duplicated cards when related to equiparea

* ui: disable okcancel when replying

* ui: disable invaild card when responding

* game: skill & card use history

* game: more judge on vsskill's canUse

* luoyi

* login page i18n

* i18n for server error message

* tuxi

* expand equip area when needed

* add footnote to cards from pile

* ui: only filter CanUseCard when playing

* expand equip when responding

* prompt

* prompt for askforchoice

* guanxing

* fix guanxing

* tieqi

* liuli

* doc for trigger skill

* xiaoji

* lianying

* fanjian

* rende

* add skill's subclass

* TODO: add tmd skill functions for other cards

* paoxiao

* qicai

* guose

* yiji (WIP)
2023-01-29 18:11:41 +08:00
notify fd072ca0b4 Status skill and some skills (#47)
* prototype for 3 status skills

* maxcards skill

* attack range skill

* prohibit skill

* kongcheng

* use general's skill instead of default

* skills
2023-01-22 00:49:11 +08:00
notify 2ab79a26fb Better trigger (#45)
* set gamerule a refresh trigger skill

* cost and use of trigger skill
2023-01-16 21:04:28 +08:00
notify b6530eae9d Vs skill (#44)
* vs skill concept

* unify card:clone

* virtual card

* wusheng

* exppattern

* use virtual card(WIP)

* change cardId to card

* virtual card log

* notify skill invoked

* fix coroutine bug; allow vsskill to response

* extra_data for askForUseCard

Co-authored-by: Ho-spair <linyuy@163.com>
2023-01-16 19:13:07 +08:00
notify 509cf29175 Distance skill (#37)
* global distance skill

* normal distance skill

* remove addGeneral from init.lua

* fixed distance
2023-01-04 14:21:29 +08:00
notify dfa88df214 Delaytrick (#34)
* skip phase (not tested)

* Keep alive

* fix peach

* update

* fix move card

* indulgence

* lightning

* complete skip phase
2022-12-20 18:40:17 +08:00
notify 162b3af505 Use skill (#25)
* distance & snatch

* distance & snatch - clean

* fix: client.alive_players

* room:askForCardChosen(todo: snatch)

* add skill to players(uncomplete)

* ui of skill btn

* expand pile(not completed)

* Use card2 (#23)

* snatch (todo: owner_map)

* owner_map

* remove too many snatch

* update

* call active skill's functions

* use zhiheng

* Qt6 (#24)

* use qt6

* android compiling

* remove version number of qml import

* correct anti-sql injection; update deprecated code

* add fkparse as submodule

* link fkparse, and write simple functions

* adjust ui

* adjust layout for photos; fix qml warning

* android problem fix (partially)

* move ico

* update copy_assets

* update logic for ok/cancel btn
2022-09-14 13:01:10 +08:00
notify dedde94643
Use card (#19)
* the process of using card (uncompleted)

* code style: tab is 2 spaces(not \t or 4 space)

* update lua54.dll to MinGW version(no cygwin1.dll required)

* basic ui logic

* ActiveSkill

* modidy ActiveSkill defaults

* todo: defaultEquipSkill

* client

* send use card to server

* playing phase, equip

Co-authored-by: Ho-spair <linyuy@163.com>
2022-04-30 15:27:56 +08:00
Ho-spair 09e34cfef6
Gamecore 2 (#16)
* upgrade gamecore

* [Funtion] Room:moveCards() completed

* add some functions in Room

* fixup

* delete wrong files
2022-04-08 18:39:58 +08:00