Commit Graph

49 Commits

Author SHA1 Message Date
notify 02e22024f2
Misc (#195)
- 调度器善后
- 修复可用不足警告
- 创房时可以全选或者反选
- 重连时候不可以重新开大
- 顶号
2023-06-16 13:26:02 +08:00
notify b75d8afe62
Scheduler (#194)
简单协程调度器的实现,详细说明请看 docs/dev/scheduler.rst
2023-06-16 10:56:33 +08:00
notify 494938e13c Changelog: v0.2.3 2023-06-11 16:53:27 +08:00
YoumuKon 8a11690de7
无用空表Util.DummyTable化+若干bug fix+若干调整 (#189)
- 将一些作为替代选项的空表替换为Util.DummyTable
- 修复了控制失效bug
- 修复了askForCards的bug
- 为弃牌阶段弃牌禁止取消
- 谋徐盛血量变为100
- setMark追加count为0时设为nil的设定
- 各种国际化
- 观星盒追加旁边的牌堆名
2023-06-11 16:22:11 +08:00
notify 7f718503bd
Misc (#184)
- 复活角色
- 将cancelable全改为默认true
- move私有牌堆的未知牌时不再显示错误
- 处理区牌增加大多数脚注
- 装备栏有宝物时压缩间距
- 使用虚拟牌时处理区有虚拟名字
- 带详细描述的选择框
- 武将一览界面显示技能语音、胜利语音、死亡语音
2023-06-10 02:18:51 +08:00
Rintim 04f1009075
Provide hasMark methods (#180)
It provides two methods `Player:hasMark` and `Card:hasMark` for
determining if the player/card has the mark, which is more expressive
than `xxx:getMark` when only checking for the existence.

By the way, xxx:hasMark may directly determine a `Mark` in xxx.mark, for
which I added `table:hasKey` method in `util.lua`, but currently the
code still checks if the result of `xxx:getMark` is not 0.

---


提供了`Player:hasMark`和`Card:hasMark`两个方法,用于在只需要判断是否有标记时可以直接使用`xxx:hasMark`,相比使用`xxx:getMark`而言更加表达代码的作用。


顺带一提,`xxx:hasMark`应该可以直接判断`Mark`是否在`xxx.mark`里,我在`util.lua`里添加了`table:hasKey`的方法用于判断,但目前的代码还是判断`xxx:getMark`的结果是否不为0。
2023-06-09 17:23:24 +08:00
YoumuKon a6ad71c19f
JS修改+距离计算修改 (#179)
- 替换大多数let为const
- 将一些双等号替换为三等号
- 距离计算追加“玩家自己与距离为0”设定,副作用是不显示自身距离
2023-06-09 01:16:23 +08:00
notify 713bbca17a
Recorder (#178)
提供了一个简单的事件记录器机制和一个功能简单的查询函数。
在GameEvent的clear环节中,先执行默认的clear函数,再执行用户自订的clear函数。
2023-06-09 01:10:16 +08:00
deepskybird 5a30c69085
player_doc更新 (#168)
更新文档注释,还请各位查阅。

Co-authored-by: YWSC120 <111111@163.com>
2023-06-03 23:59:04 +08:00
notify a97f74450d Changelog: v0.2.0 2023-05-28 19:44:46 +08:00
Ho-spair 5128100083
modify process & quest skill (#166) 2023-05-28 18:45:54 +08:00
Ho-spair 1c6304f0f7
UI modify (#158)
- 实现移动场上一张牌;
- 实现用作记录牌名并可查看的mark;
- 将askForChoice和interaction的文本解析方式改为prompt;
- 新增属性将牌移至牌堆指定索引位置;
- 修改时机“游戏开始时”至正确位置;
- 优化衍生牌逻辑;
- 新增“卡牌展示后”时机。
2023-05-20 16:00:03 +08:00
Ho-spair a7e3ad0f19
Switch skill (#148)
- 实现转换技;
- 将特殊的标记名称注册在mark_enum.lua文件;
- 标记值在UI的显示支持解析数组;
- 将觉醒技的觉醒条件分离至canWake函数;
- 修复一系列bug;
- 在Room类新增从牌堆、弃牌堆中随机获取牌的方法。
2023-05-13 14:20:34 +08:00
notify a09023c487
Heg (#134)
国战雏形
2023-04-23 21:10:07 +08:00
notify f0212d54cf
Pattern (#129)
为Pattern增加了否定语法
优化几个类的__tostring元方法
增加调试器第三方库,编写调试文档
2023-04-21 04:29:52 +08:00
notify 85923c8a71
Deputy general (#127)
增加双将机制
2023-04-19 14:07:16 +08:00
notify 9ae119028c
Enhancement (#116)
给Card堆一个伤害牌属性
能添加虚拟牌为子卡
封装了“视为使用xx牌”的函数
护甲机制
interaction现在可以作为一个函数,以实现动态化
冰属性伤害
使用牌堆中的牌不再报错
2023-04-13 20:17:39 +08:00
notify b4f6e58f07
Chat (#112)
增加聊天功能
修bug
2023-04-10 21:34:23 +08:00
notify 9a951fdbfe
Spdx license (#109)
在所有代码中添加了许可证标记头
2023-04-09 13:35:35 +08:00
notify b0c2855389
Enhancement (#108)
优化拖曳
牌局查看技能
狮子不给死人加血
GameEvent相关函数
觉醒技默认cost和锁定技一样
2023-04-09 11:44:19 +08:00
deepskybird 95abdac88a
player_doc (#93)
增加了player.lua文档的注释
2023-04-01 23:06:55 +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 fcddd36a6d
Fix more bug (#81)
修更多的bug,哪来那么多bug啊
2023-03-18 23:37:21 +08:00
notify fd1a1ce5fd
Fixbug (#79)
修一大堆bug
2023-03-18 15:34:42 +08:00
Ho-spair 4ab14c7d74
Pindian&analeptic (#77)
Co-authored-by: notify <notify-ctrl@qq.com>
2023-03-14 20:48:08 +08:00
notify 590af8cb14
Maneuvering (#72)
军争包还差火攻、酒、朱雀羽扇没做
铁索还没法重铸
除此之外还行
2023-03-09 12:19:16 +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 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 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
Ho-spair 2f9f13f74b common tricks completed (#35)
* common tricks completed

* fix muti-targets tricks
2022-12-20 21:15:49 +08:00
notify 0029949a40 Basiccard (#33)
* update nullification

* Slash

* kill player

* correct players to alive_players

* add log for changehp and dying

* usecard log & indicator

* setemotion, logevent

* fix distanceTo

* shutdown server when console start

* game over

* complete slash

* change format of flist.txt to avoid '\r\n'

* fix \r\n

* peach, zhiheng

* ask for peach
2022-12-20 12:51:54 +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
Notify-ctrl 9e09e6e50d
Todo: disable sync (#14)
* lock room lua

* fixme

* add 'id' to lua Player

Co-authored-by: Notify-ctrl <notify-ctrl@qq.com>
2022-04-03 21:43:35 +08:00
Notify-ctrl 927c5f479b
gamerule:Turnstart (#12)
* add tag to room

* add switch statement(util.lua)

* using emmylua

* gamerule(..)

* turnOver

* add many events

* stop the room when deleting

Co-authored-by: Notify-ctrl <notify-ctrl@qq.com>
2022-04-02 21:39:44 +08:00
Notify-ctrl 4e25c032e6
Skill (#9)
* TriggerSkill

* update type comment

* events of phases

* lua annotation

* change style of enums

* clear lua stack

* multi lua_State at server side

* disable addPlayer when room is full or started

* logic:trigger

Co-authored-by: Notify-ctrl <notify-ctrl@qq.com>
2022-04-01 20:51:01 +08:00
Notify-ctrl 957fefe881
Cards (#8)
* more comment

* create standard card pack

* create card classes

* freekill -> fk

* fk_ex
2022-03-31 13:29:23 +08:00
Notify-ctrl a85f510c98 commit 2022-03-30 16:33:56 +08:00
Notify-ctrl 7fd127b849
Request (#7)
* cli

* add timeout for class Room

* request func, roomowner

* request

* corrent stupid Qml/JS

* chooseGenerals

* prepareForStart(part 1)

* fix require grammar
2022-03-30 14:14:40 +08:00
Notify-ctrl 58ea0ca80a
Role & Seat (#6)
* standard generals

* assignrole

* arrangeSeat

* fix bugs
2022-03-28 22:24:30 +08:00
Notify-ctrl a67175f8eb Room (#4)
* Run room in lua

* handle offline player

* Better toast and other

* delete useless stuff

* todo: edit profile

* use pch
2022-03-27 15:12:00 +08:00
Notify-ctrl 3dc95ebc49 Gamecore (#3)
* create some class

* create some base classes

* fixup

Co-authored-by: Ho-spair <linyuy@163.com>
2022-03-27 15:12:00 +08:00