mirror of
https://github.com/Lost-MSth/Arcaea-server.git
synced 2026-02-16 05:27:26 +08:00
Update to v2.6.5 without release
- Change something to make that purchase things can have some cores. - Fix the download link of Arcaea client in README > This is a small update.
This commit is contained in:
@@ -53,7 +53,9 @@ It is just so interesting. What it can do is under exploration.
|
||||
## 下载 Download
|
||||
[这里 Here](https://github.com/Lost-MSth/Arcaea-server/releases)
|
||||
|
||||
[Arcaea](https://konmai.cn/#arcaea)
|
||||
[Arcaea](https://arcaea.lowiro.com/zh)
|
||||
> Konmai下载站因不可抗力关闭,请从官方网站下载
|
||||
> Konmai download website is closed due to force majeure. Please download it from the official website.
|
||||
|
||||
## 更新日志 Update log
|
||||
只保留最新版本 Only keep the latest version.
|
||||
|
||||
Binary file not shown.
@@ -4,7 +4,7 @@ import json
|
||||
|
||||
# 数据库初始化文件,删掉arcaea_database.db文件后运行即可,谨慎使用
|
||||
|
||||
ARCAEA_SERVER_VERSION = 'v2.6.4'
|
||||
ARCAEA_SERVER_VERSION = 'v2.6.5'
|
||||
|
||||
|
||||
def main(path='./'):
|
||||
@@ -228,6 +228,7 @@ def main(path='./'):
|
||||
c.execute('''create table if not exists purchase_item(purchase_name text,
|
||||
item_id text,
|
||||
type text,
|
||||
amount int,
|
||||
primary key(purchase_name, item_id, type)
|
||||
);''')
|
||||
c.execute('''create table if not exists user_save(user_id int primary key,
|
||||
@@ -379,7 +380,7 @@ def main(path='./'):
|
||||
c.execute('''insert into item values(?,"core",1,'')''', (i,))
|
||||
|
||||
world_songs = ["babaroque", "shadesoflight", "kanagawa", "lucifer", "anokumene", "ignotus", "rabbitintheblackroom", "qualia", "redandblue", "bookmaker", "darakunosono", "espebranch", "blacklotus", "givemeanightmare", "vividtheory", "onefr", "gekka", "vexaria3", "infinityheaven3", "fairytale3", "goodtek3", "suomi", "rugie", "faintlight", "harutopia", "goodtek", "dreaminattraction", "syro", "diode", "freefall", "grimheart", "blaster",
|
||||
"cyberneciacatharsis", "monochromeprincess", "revixy", "vector", "supernova", "nhelv", "purgatorium3", "dement3", "crossover", "guardina", "axiumcrisis", "worldvanquisher", "sheriruth", "pragmatism", "gloryroad", "etherstrike", "corpssansorganes", "lostdesire", "blrink", "essenceoftwilight", "lapis", "solitarydream", "lumia3", "purpleverse", "moonheart3", "glow", "enchantedlove", "take", "lifeispiano", "vandalism", "nexttoyou3", "lostcivilization3", "turbocharger", "bookmaker3", "laqryma3", "kyogenkigo", "hivemind", "seclusion", "quonwacca3", "bluecomet", "energysynergymatrix"]
|
||||
"cyberneciacatharsis", "monochromeprincess", "revixy", "vector", "supernova", "nhelv", "purgatorium3", "dement3", "crossover", "guardina", "axiumcrisis", "worldvanquisher", "sheriruth", "pragmatism", "gloryroad", "etherstrike", "corpssansorganes", "lostdesire", "blrink", "essenceoftwilight", "lapis", "solitarydream", "lumia3", "purpleverse", "moonheart3", "glow", "enchantedlove", "take", "lifeispiano", "vandalism", "nexttoyou3", "lostcivilization3", "turbocharger", "bookmaker3", "laqryma3", "kyogenkigo", "hivemind", "seclusion", "quonwacca3", "bluecomet", "energysynergymatrix", "gengaozo", "lastendconductor3"]
|
||||
for i in world_songs:
|
||||
c.execute('''insert into item values(?,"world_song",1,'')''', (i,))
|
||||
|
||||
@@ -411,10 +412,17 @@ def main(path='./'):
|
||||
_id = ''
|
||||
else:
|
||||
_id = j['_id']
|
||||
c.execute(
|
||||
'''select exists(select * from item where item_id=?)''', (j['id'],))
|
||||
if c.fetchone() == (0,):
|
||||
c.execute('''insert into item values(?,?,?,?)''',
|
||||
(j['id'], j['type'], j['is_available'], _id))
|
||||
c.execute('''insert into purchase_item values(?,?,?)''',
|
||||
(i['name'], j['id'], j['type']))
|
||||
if 'amount' in j:
|
||||
amount = j['amount']
|
||||
else:
|
||||
amount = 1
|
||||
c.execute('''insert into purchase_item values(?,?,?,?)''',
|
||||
(i['name'], j['id'], j['type'], amount))
|
||||
|
||||
# item初始化
|
||||
f = open(path+'singles.json', 'r')
|
||||
|
||||
@@ -4,6 +4,11 @@
|
||||
"type": "pack",
|
||||
"id": "core",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -19,6 +24,11 @@
|
||||
"type": "character",
|
||||
"id": "kou",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -34,6 +44,11 @@
|
||||
"type": "character",
|
||||
"id": "sapphire",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -49,6 +64,11 @@
|
||||
"type": "character",
|
||||
"id": "lethe",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -60,6 +80,11 @@
|
||||
"type": "pack",
|
||||
"id": "yugamu",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -71,6 +96,11 @@
|
||||
"type": "pack",
|
||||
"id": "lanota",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -82,6 +112,11 @@
|
||||
"type": "pack",
|
||||
"id": "nijuusei",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -93,6 +128,11 @@
|
||||
"type": "pack",
|
||||
"id": "rei",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -104,6 +144,11 @@
|
||||
"type": "pack",
|
||||
"id": "tonesphere",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -115,6 +160,11 @@
|
||||
"type": "pack",
|
||||
"id": "groovecoaster",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -126,6 +176,11 @@
|
||||
"type": "pack",
|
||||
"id": "zettai",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -137,6 +192,11 @@
|
||||
"type": "pack",
|
||||
"id": "chunithm",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 3,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 300,
|
||||
"orig_price": 300
|
||||
@@ -146,6 +206,11 @@
|
||||
"type": "pack",
|
||||
"id": "prelude",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 4,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 400,
|
||||
"orig_price": 400,
|
||||
@@ -157,6 +222,11 @@
|
||||
"type": "pack",
|
||||
"id": "omatsuri",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -168,6 +238,11 @@
|
||||
"type": "pack",
|
||||
"id": "vs",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 500,
|
||||
"orig_price": 500,
|
||||
@@ -179,8 +254,13 @@
|
||||
"type": "pack",
|
||||
"id": "extend",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 7,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 700,
|
||||
"price": 100,
|
||||
"orig_price": 700,
|
||||
"discount_from": 1615248000000,
|
||||
"discount_to": 1615852799000
|
||||
@@ -190,6 +270,11 @@
|
||||
"type": "pack",
|
||||
"id": "alice",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 500,
|
||||
"price": 500
|
||||
@@ -199,6 +284,11 @@
|
||||
"type": "pack",
|
||||
"id": "alice_append_1",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 3,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 300,
|
||||
"price": 300
|
||||
@@ -208,6 +298,11 @@
|
||||
"type": "pack",
|
||||
"id": "ongeki",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 4,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 400,
|
||||
"price": 400
|
||||
@@ -217,6 +312,11 @@
|
||||
"type": "pack",
|
||||
"id": "maimai",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 4,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 400,
|
||||
"price": 400
|
||||
@@ -226,6 +326,11 @@
|
||||
"type": "pack",
|
||||
"id": "chunithm_append_1",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 3,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 300,
|
||||
"price": 300
|
||||
@@ -235,6 +340,11 @@
|
||||
"type": "pack",
|
||||
"id": "observer_append_1",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 3,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 300,
|
||||
"price": 300
|
||||
@@ -244,6 +354,11 @@
|
||||
"type": "pack",
|
||||
"id": "observer",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 500,
|
||||
"price": 500
|
||||
@@ -253,6 +368,11 @@
|
||||
"type": "pack",
|
||||
"id": "observer_append_2",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 3,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 300,
|
||||
"price": 300
|
||||
@@ -262,6 +382,11 @@
|
||||
"type": "pack",
|
||||
"id": "wacca",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 5,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 500,
|
||||
"price": 500
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
"id": "dataerror",
|
||||
"type": "single",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -24,6 +29,11 @@
|
||||
"id": "yourvoiceso",
|
||||
"type": "single",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -35,6 +45,11 @@
|
||||
"id": "crosssoul",
|
||||
"type": "single",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -46,6 +61,11 @@
|
||||
"type": "single",
|
||||
"id": "impurebird",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -57,6 +77,11 @@
|
||||
"type": "single",
|
||||
"id": "auxesia",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -68,6 +93,11 @@
|
||||
"type": "single",
|
||||
"id": "modelista",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -79,6 +109,11 @@
|
||||
"type": "single",
|
||||
"id": "yozakurafubuki",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -90,6 +125,11 @@
|
||||
"type": "single",
|
||||
"id": "surrender",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -101,6 +141,11 @@
|
||||
"type": "single",
|
||||
"id": "metallicpunisher",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -110,6 +155,11 @@
|
||||
"type": "single",
|
||||
"id": "carminescythe",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -119,6 +169,11 @@
|
||||
"type": "single",
|
||||
"id": "bethere",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -130,6 +185,11 @@
|
||||
"type": "single",
|
||||
"id": "callmyname",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -141,6 +201,11 @@
|
||||
"type": "single",
|
||||
"id": "fallensquare",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -152,6 +217,11 @@
|
||||
"type": "single",
|
||||
"id": "dropdead",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -163,6 +233,11 @@
|
||||
"type": "single",
|
||||
"id": "alexandrite",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -174,6 +249,11 @@
|
||||
"type": "single",
|
||||
"id": "astraltale",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -185,6 +265,11 @@
|
||||
"type": "single",
|
||||
"id": "phantasia",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -194,6 +279,11 @@
|
||||
"type": "single",
|
||||
"id": "empireofwinter",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -203,6 +293,11 @@
|
||||
"type": "single",
|
||||
"id": "libertas",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -214,6 +309,11 @@
|
||||
"type": "single",
|
||||
"id": "dottodot",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -225,6 +325,11 @@
|
||||
"type": "single",
|
||||
"id": "dreadnought",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -236,6 +341,11 @@
|
||||
"type": "single",
|
||||
"id": "mirzam",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -247,6 +357,11 @@
|
||||
"type": "single",
|
||||
"id": "heavenlycaress",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -258,6 +373,11 @@
|
||||
"type": "single",
|
||||
"id": "filament",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -269,6 +389,11 @@
|
||||
"type": "single",
|
||||
"id": "avantraze",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -278,6 +403,11 @@
|
||||
"type": "single",
|
||||
"id": "battlenoone",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -289,6 +419,11 @@
|
||||
"type": "single",
|
||||
"id": "saikyostronger",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -298,6 +433,11 @@
|
||||
"type": "single",
|
||||
"id": "izana",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -309,6 +449,11 @@
|
||||
"type": "single",
|
||||
"id": "einherjar",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -320,6 +465,11 @@
|
||||
"type": "single",
|
||||
"id": "laqryma",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -331,6 +481,11 @@
|
||||
"type": "single",
|
||||
"id": "amygdata",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -342,6 +497,11 @@
|
||||
"type": "single",
|
||||
"id": "altale",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -353,6 +513,11 @@
|
||||
"type": "single",
|
||||
"id": "feelssoright",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -364,6 +529,11 @@
|
||||
"type": "single",
|
||||
"id": "scarletcage",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -373,6 +543,11 @@
|
||||
"type": "single",
|
||||
"id": "teriqma",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -382,6 +557,11 @@
|
||||
"type": "single",
|
||||
"id": "mahoroba",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -393,6 +573,11 @@
|
||||
"type": "single",
|
||||
"id": "badtek",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -404,6 +589,11 @@
|
||||
"type": "single",
|
||||
"id": "maliciousmischance",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -413,6 +603,11 @@
|
||||
"type": "single",
|
||||
"id": "buchigireberserker",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -422,6 +617,11 @@
|
||||
"type": "single",
|
||||
"id": "galaxyfriends",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100,
|
||||
@@ -433,6 +633,11 @@
|
||||
"type": "single",
|
||||
"id": "xeraphinite",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -442,6 +647,11 @@
|
||||
"type": "single",
|
||||
"id": "xanatos",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"price": 100,
|
||||
"orig_price": 100
|
||||
@@ -451,6 +661,11 @@
|
||||
"type": "single",
|
||||
"id": "attraqtia",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -460,6 +675,11 @@
|
||||
"type": "single",
|
||||
"id": "gimmedablood",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -469,6 +689,11 @@
|
||||
"type": "single",
|
||||
"id": "bassline",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -478,6 +703,11 @@
|
||||
"type": "single",
|
||||
"id": "theultimacy",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -496,6 +726,11 @@
|
||||
"type": "single",
|
||||
"id": "rekkaresonance",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -505,6 +740,11 @@
|
||||
"type": "single",
|
||||
"id": "sheriruthrmx",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
@@ -514,6 +754,39 @@
|
||||
"type": "single",
|
||||
"id": "eveninginscarlet",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
}, {
|
||||
"name": "lastendconductor",
|
||||
"items": [{
|
||||
"type": "single",
|
||||
"id": "lastendconductor",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
}, {
|
||||
"name": "goldenslaughterer",
|
||||
"items": [{
|
||||
"type": "single",
|
||||
"id": "goldenslaughterer",
|
||||
"is_available": true
|
||||
}, {
|
||||
"type": "core",
|
||||
"amount": 1,
|
||||
"id": "core_generic",
|
||||
"is_available": true
|
||||
}],
|
||||
"orig_price": 100,
|
||||
"price": 100
|
||||
|
||||
@@ -25,16 +25,36 @@ def get_purchase(c, type='pack'):
|
||||
for i in x:
|
||||
items = []
|
||||
c.execute(
|
||||
'''select a.* from item a, purchase_item b where a.item_id=b.item_id and a.type=b.type and b.purchase_name=:name''', {'name': i[0]})
|
||||
'''select a.*, b.amount from item a, purchase_item b where a.item_id=b.item_id and a.type=b.type and b.purchase_name=:name''', {'name': i[0]})
|
||||
y = c.fetchall()
|
||||
t = None
|
||||
if y:
|
||||
for j in y:
|
||||
if j[3]:
|
||||
amount = j[3]
|
||||
else:
|
||||
amount = 1
|
||||
if i[0] == j[0]:
|
||||
# 物品排序,否则客户端报错
|
||||
t = {
|
||||
"type": j[1],
|
||||
"id": j[0],
|
||||
"is_available": int2b(j[2]),
|
||||
'amount': amount
|
||||
}
|
||||
else:
|
||||
items.append({
|
||||
"type": j[1],
|
||||
"id": j[0],
|
||||
"is_available": int2b(j[2])
|
||||
"is_available": int2b(j[2]),
|
||||
"amount": amount
|
||||
})
|
||||
|
||||
|
||||
if t is not None:
|
||||
# 放到列表头
|
||||
items = [t, items]
|
||||
|
||||
r = {"name": i[0],
|
||||
"items": items,
|
||||
"price": i[1],
|
||||
@@ -104,7 +124,7 @@ def buy_thing(user_id, purchase_id):
|
||||
}
|
||||
|
||||
c.execute(
|
||||
'''select item_id, type from purchase_item where purchase_name=:a''', {'a': purchase_id})
|
||||
'''select item_id, type, amount from purchase_item where purchase_name=:a''', {'a': purchase_id})
|
||||
x = c.fetchall()
|
||||
if x:
|
||||
now = int(time.time() * 1000)
|
||||
@@ -115,7 +135,11 @@ def buy_thing(user_id, purchase_id):
|
||||
|
||||
if flag:
|
||||
for i in x:
|
||||
server.item.claim_user_item(c, user_id, i[0], i[1])
|
||||
if i[2]:
|
||||
amount = i[2]
|
||||
else:
|
||||
amount = 1
|
||||
server.item.claim_user_item(c, user_id, i[0], i[1], amount)
|
||||
|
||||
success_flag = True
|
||||
else:
|
||||
|
||||
@@ -127,9 +127,12 @@ def get_available_maps():
|
||||
for i in Config.AVAILABLE_MAP:
|
||||
info = get_world_info(i)
|
||||
del info['steps']
|
||||
try:
|
||||
del info['is_locked']
|
||||
del info['curr_position']
|
||||
del info['curr_capture']
|
||||
except:
|
||||
pass
|
||||
re.append(info)
|
||||
|
||||
return re
|
||||
|
||||
@@ -30,7 +30,7 @@ class Config():
|
||||
Allowed game versions
|
||||
If it is blank, all are allowed.
|
||||
'''
|
||||
ALLOW_APPVERSION = ['3.5.3', '3.5.3c', '3.8.4', '3.8.4c']
|
||||
ALLOW_APPVERSION = ['3.5.3', '3.5.3c', '3.8.6', '3.8.6c']
|
||||
'''
|
||||
--------------------
|
||||
'''
|
||||
|
||||
@@ -37,6 +37,10 @@
|
||||
<span class="char-num">{{x['type']}}</span>
|
||||
<br />
|
||||
|
||||
<span>Amount: </span>
|
||||
<span class="char-num">{{x['amount']}}</span>
|
||||
<br />
|
||||
|
||||
|
||||
|
||||
{% if not loop.last %}
|
||||
|
||||
@@ -17,8 +17,11 @@
|
||||
<option value='pack'>Song pack</option>
|
||||
<option value='world_song'>World song</option>
|
||||
<option value='character'>Character</option>
|
||||
<option value='core'>Core</option>
|
||||
</select>
|
||||
</div>
|
||||
<label for="amount">Amount</label>
|
||||
<input name="amount" id="amount" value="1" required>
|
||||
<br />
|
||||
<input type="submit" value="Add">
|
||||
</form>
|
||||
@@ -36,6 +39,7 @@
|
||||
<option value='pack'>Pack</option>
|
||||
<option value='world_song'>World song</option>
|
||||
<option value='character'>Character</option>
|
||||
<option value='core'>Core</option>
|
||||
</select>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
@@ -847,6 +847,7 @@ def change_purchase_item():
|
||||
purchase_name = request.form['purchase_name']
|
||||
item_id = request.form['item_id']
|
||||
item_type = request.form['type']
|
||||
amount = int(request.form['amount'])
|
||||
except:
|
||||
error = '数据错误 Wrong data.'
|
||||
flash(error)
|
||||
@@ -862,8 +863,8 @@ def change_purchase_item():
|
||||
c.execute(
|
||||
'''select exists(select * from item where item_id=? and type=?)''', (item_id, item_type))
|
||||
if c.fetchone() == (1,):
|
||||
c.execute('''insert into purchase_item values(?,?,?)''',
|
||||
(purchase_name, item_id, item_type))
|
||||
c.execute('''insert into purchase_item values(?,?,?,?)''',
|
||||
(purchase_name, item_id, item_type, amount))
|
||||
flash('''购买项目的物品添加成功 Successfully add the purchase's item.''')
|
||||
else:
|
||||
error = '''物品不存在 The item does not exist.'''
|
||||
|
||||
@@ -301,7 +301,7 @@ def get_all_purchase():
|
||||
items = []
|
||||
if y:
|
||||
for j in y:
|
||||
items.append({'item_id': j[1], 'type': j[2]})
|
||||
items.append({'item_id': j[1], 'type': j[2], 'amount':j[3]})
|
||||
|
||||
re.append({'purchase_name': i[0],
|
||||
'price': i[1],
|
||||
|
||||
Reference in New Issue
Block a user