1+ # 欢迎使用 PythonIDE!如果觉得好用,请给个好评哦~
2+ import random
3+ import json
4+ import hashlib
5+ import time
6+
7+ def clear ():
8+ print ("\n " * 80 )
9+
10+ class 网吧大亨终极版 :
11+ def __init__ (self ):
12+ # 基础资源
13+ self .钱 = 500
14+ self .天数 = 1
15+ self .小时 = 10
16+ self .电脑总数 = 6
17+ self .电脑使用中 = 0
18+ self .电脑损坏 = 0
19+ self .排队顾客 = 0
20+ self .上网价格 = 6
21+
22+ # 🔥 新增系统
23+ self .口碑 = 100
24+ self .会员数 = 0
25+ self .饮料库存 = 20
26+ self .饮料成本 = 2
27+ self .饮料售价 = 5
28+ self .雇佣网管 = False
29+ self .装修等级 = 1
30+ self .天气 = ["☀️晴天" , "🌧️小雨" , "⛈️大雨" , "❄️雪天" ][random .randint (0 ,3 )]
31+ self .今日营收 = 0
32+
33+ # ======================
34+ # 存档码系统(唯一+可复制)
35+ # ======================
36+ def 生成存档码 (self ):
37+ 数据 = {
38+ "钱" : self .钱 ,
39+ "天数" : self .天数 ,
40+ "小时" : self .小时 ,
41+ "电脑总数" : self .电脑总数 ,
42+ "电脑使用中" : self .电脑使用中 ,
43+ "电脑损坏" : self .电脑损坏 ,
44+ "排队顾客" : self .排队顾客 ,
45+ "上网价格" : self .上网价格 ,
46+ "口碑" : self .口碑 ,
47+ "会员数" : self .会员数 ,
48+ "饮料库存" : self .饮料库存 ,
49+ "饮料成本" : self .饮料成本 ,
50+ "饮料售价" : self .饮料售价 ,
51+ "雇佣网管" : self .雇佣网管 ,
52+ "装修等级" : self .装修等级 ,
53+ "天气" : self .天气 ,
54+ "今日营收" : self .今日营收
55+ }
56+ 字符串 = json .dumps (数据 , ensure_ascii = False )
57+ 唯一码 = hashlib .sha256 ((字符串 + str (time .time ())).encode ('utf-8' )).hexdigest ()[:16 ]
58+ print ("\n ✅ 你的唯一存档码:" )
59+ print (f"【{ 唯一码 } 】" )
60+ print ("💾 存档数据(可保存):" )
61+ print (字符串 )
62+ print ("\n ℹ️ 下次输入这段数据即可读档!" )
63+ input ("回车继续..." )
64+
65+ def 读取存档码 (self ):
66+ try :
67+ 数据字符串 = input ("\n 请粘贴存档数据:\n " )
68+ 数据 = json .loads (数据字符串 )
69+ self .钱 = 数据 ["钱" ]
70+ self .天数 = 数据 ["天数" ]
71+ self .小时 = 数据 ["小时" ]
72+ self .电脑总数 = 数据 ["电脑总数" ]
73+ self .电脑使用中 = 数据 ["电脑使用中" ]
74+ self .电脑损坏 = 数据 ["电脑损坏" ]
75+ self .排队顾客 = 数据 ["排队顾客" ]
76+ self .上网价格 = 数据 ["上网价格" ]
77+ self .口碑 = 数据 ["口碑" ]
78+ self .会员数 = 数据 ["会员数" ]
79+ self .饮料库存 = 数据 ["饮料库存" ]
80+ self .饮料成本 = 数据 ["饮料成本" ]
81+ self .饮料售价 = 数据 ["饮料售价" ]
82+ self .雇佣网管 = 数据 ["雇佣网管" ]
83+ self .装修等级 = 数据 ["装修等级" ]
84+ self .天气 = 数据 ["天气" ]
85+ self .今日营收 = 数据 ["今日营收" ]
86+ print ("\n ✅ 读档成功!" )
87+ except :
88+ print ("\n ❌ 存档数据错误!" )
89+ input ("回车继续..." )
90+
91+ # ======================
92+ # 快进1/2/3小时
93+ # ======================
94+ def 时间流逝 (self ):
95+ self .小时 += 1
96+ if self .小时 >= 24 :
97+ self .小时 = 9
98+ self .天数 += 1
99+ self .今日营收 = 0
100+ self .天气 = ["☀️晴天" ,"🌧️小雨" ,"⛈️大雨" ,"❄️雪天" ][random .randint (0 ,3 )]
101+
102+ # 天气+口碑影响顾客
103+ 来客数 = random .randint (1 ,4 )
104+ if self .天气 == "☀️晴天" : 来客数 += 2
105+ if self .天气 == "⛈️大雨" : 来客数 -= 2
106+ if self .口碑 > 120 : 来客数 += 2
107+ if self .口碑 < 60 : 来客数 -= 1
108+ self .排队顾客 += max (来客数 ,0 )
109+
110+ # 电脑损坏
111+ if random .randint (1 ,10 ) == 1 and self .电脑损坏 < self .电脑总数 // 2 :
112+ self .电脑损坏 += 1
113+ print ("\n ⚠️ 一台电脑坏了!" )
114+
115+ # 网管自动维修
116+ if self .雇佣网管 and self .电脑损坏 > 0 and random .randint (1 ,2 )== 1 :
117+ self .电脑损坏 -= 1
118+ print ("\n ✅ 网管自动修好一台电脑!" )
119+
120+ def 快进2小时 (self ):
121+ print ("\n ⏩ 快进 2 小时..." )
122+ self .时间流逝 ()
123+ self .时间流逝 ()
124+ input ("完成!回车继续..." )
125+
126+ def 快进3小时 (self ):
127+ print ("\n ⏩ 快进 3 小时..." )
128+ self .时间流逝 ()
129+ self .时间流逝 ()
130+ self .时间流逝 ()
131+ input ("完成!回车继续..." )
132+
133+ # ======================
134+ # 地图与原有功能不变
135+ # ======================
136+ def 画地图 (self ):
137+ clear ()
138+ print ("🏪【网吧大亨·终极版】🏪" .center (58 , "=" ))
139+ print ()
140+
141+ 电脑行 = " "
142+ for i in range (self .电脑总数 ):
143+ if i < self .电脑使用中 :
144+ 电脑行 += "💻 "
145+ elif i < self .电脑使用中 + self .电脑损坏 :
146+ 电脑行 += "🔧 "
147+ else :
148+ 电脑行 += "🖥️ "
149+ print (电脑行 )
150+ print ("-" * 58 )
151+
152+ 顾客显示 = "👤" * min (self .排队顾客 , 12 )
153+ if self .排队顾客 > 12 : 顾客显示 += f"+{ self .排队顾客 - 12 } 人"
154+ print (f" 👥排队:{ 顾客显示 } " )
155+
156+ print (f" 👑会员:{ self .会员数 } | 👨💻网管:{ '已雇佣' if self .雇佣网管 else '未雇' } | 🎨装修:{ self .装修等级 } 级" )
157+ print (f" 🌟口碑:{ self .口碑 } | { self .天气 } | 📊今日营收:{ self .今日营收 } 元" )
158+ print (f" 💰金钱:{ self .钱 } | 🥤饮料库存:{ self .饮料库存 } | 💸网费:{ self .上网价格 } 元/时" )
159+ print ("=" * 58 )
160+
161+ def 接待顾客 (self ):
162+ 可用 = self .电脑总数 - self .电脑使用中 - self .电脑损坏
163+ if 可用 <= 0 or self .排队顾客 <= 0 :
164+ print ("\n ❌ 没电脑/没顾客!" )
165+ input ("回车继续..." )
166+ return
167+ 接待 = min (可用 , self .排队顾客 )
168+ 收入 = 接待 * self .上网价格
169+ self .钱 += 收入
170+ self .今日营收 += 收入
171+ self .电脑使用中 += 接待
172+ self .排队顾客 -= 接待
173+ self .口碑 = min (self .口碑 + 2 ,150 )
174+ print (f"\n ✅ 接待{ 接待 } 人!赚{ 收入 } 元 🌟口碑+2" )
175+ input ("回车继续..." )
176+
177+ def 卖饮料 (self ):
178+ if self .电脑使用中 == 0 :
179+ print ("\n ❌ 没人上网,卖不出去!" )
180+ input ("回车继续..." )
181+ return
182+ if self .饮料库存 <= 0 :
183+ print ("\n ❌ 饮料卖完了!" )
184+ input ("回车继续..." )
185+ return
186+ 卖出 = min (random .randint (1 , self .电脑使用中 ), self .饮料库存 )
187+ 利润 = 卖出 * (self .饮料售价 - self .饮料成本 )
188+ self .钱 += 利润
189+ self .今日营收 += 利润
190+ self .饮料库存 -= 卖出
191+ print (f"\n 🥤 卖出{ 卖出 } 瓶饮料!赚{ 利润 } 元" )
192+ input ("回车继续..." )
193+
194+ def 进货饮料 (self ):
195+ 进价 = self .饮料成本 * 10
196+ if self .钱 < 进价 :
197+ print ("\n ❌ 钱不够进货!" )
198+ input ("回车继续..." )
199+ return
200+ self .钱 -= 进价
201+ self .饮料库存 += 10
202+ print (f"\n 📦 饮料进货+10瓶!花费{ 进价 } 元" )
203+ input ("回车继续..." )
204+
205+ def 雇佣解雇网管 (self ):
206+ if not self .雇佣网管 :
207+ if self .钱 < 200 :
208+ print ("\n ❌ 雇佣网管需要200元!" )
209+ input ("回车继续..." )
210+ return
211+ self .钱 -= 200
212+ self .雇佣网管 = True
213+ print ("\n 👨💻 网管已雇佣!自动帮你修电脑~" )
214+ else :
215+ self .雇佣网管 = False
216+ print ("\n 👋 已解雇网管" )
217+ input ("回车继续..." )
218+
219+ def 升级装修 (self ):
220+ 费用 = 150 * self .装修等级
221+ if self .钱 < 费用 :
222+ print (f"\n ❌ 升级需要{ 费用 } 元!" )
223+ input ("回车继续..." )
224+ return
225+ self .钱 -= 费用
226+ self .装修等级 += 1
227+ self .口碑 += 10
228+ print (f"\n 🎨 装修升到{ self .装修等级 } 级!口碑+10" )
229+ input ("回车继续..." )
230+
231+ def 发展会员 (self ):
232+ 费用 = 80
233+ if self .钱 < 费用 :
234+ print ("\n ❌ 发展会员需要80元!" )
235+ input ("回车继续..." )
236+ return
237+ self .钱 -= 费用
238+ self .会员数 += random .randint (3 ,8 )
239+ self .口碑 += 5
240+ print (f"\n 👑 会员+{ random .randint (3 ,8 )} 人!口碑+5" )
241+ input ("回车继续..." )
242+
243+ def 突发事件 (self ):
244+ 事件 = random .choice ([
245+ "网红打卡🎉,顾客暴涨!" ,
246+ "突然停电⚡,所有顾客下机!" ,
247+ "消防检查👮,口碑小幅下降" ,
248+ "老顾客送礼🎁,直接给你100元!"
249+ ])
250+ if "网红" in 事件 :
251+ self .排队顾客 += 10
252+ self .口碑 += 10
253+ elif "停电" in 事件 :
254+ self .电脑使用中 = 0
255+ self .口碑 = max (self .口碑 - 10 , 30 )
256+ elif "消防" in 事件 :
257+ self .口碑 = max (self .口碑 - 8 , 30 )
258+ elif "送礼" in 事件 :
259+ self .钱 += 100
260+ print (f"\n 🚨 突发事件:{ 事件 } " )
261+ input ("回车继续..." )
262+
263+ def 买电脑 (self ):
264+ 价格 = 180
265+ if self .钱 < 价格 :
266+ print (f"\n ❌ 买电脑需要{ 价格 } 元!" )
267+ input ("回车继续..." )
268+ return
269+ self .钱 -= 价格
270+ self .电脑总数 += 1
271+ print ("\n 🆕 新增电脑一台!" )
272+ input ("回车继续..." )
273+
274+ def 每日打卡 (self ):
275+ 奖励 = random .randint (50 ,150 )
276+ self .钱 += 奖励
277+ print (f"\n 🎁 打卡成功!获得{ 奖励 } 元" )
278+ input ("回车继续..." )
279+
280+ # ======================
281+ # 主菜单(已加新功能)
282+ # ======================
283+ def 开始游戏 (self ):
284+ while True :
285+ self .画地图 ()
286+ print ("\n 【🎮 超级操作菜单】" )
287+ print (" 1.👥接待顾客 2.🥤卖饮料 3.📦进货饮料 4.🆕买电脑" )
288+ print (" 5.👨💻雇/解雇网管 6.🎨升级装修 7.👑发展会员 8.💰每日打卡" )
289+ print (" 9.🚨突发事件 10.💸改网价 11.🕒快进1h 12.⏩快进2h 13.⏩快进3h" )
290+ print ("14.💾生成存档码 15.📂读取存档码 0.🚪退出游戏" )
291+
292+ 选择 = input ("\n 请输入操作(1-15或0):" ).strip ()
293+ if 选择 == "1" : self .接待顾客 ()
294+ elif 选择 == "2" : self .卖饮料 ()
295+ elif 选择 == "3" : self .进货饮料 ()
296+ elif 选择 == "4" : self .买电脑 ()
297+ elif 选择 == "5" : self .雇佣解雇网管 ()
298+ elif 选择 == "6" : self .升级装修 ()
299+ elif 选择 == "7" : self .发展会员 ()
300+ elif 选择 == "8" : self .每日打卡 ()
301+ elif 选择 == "9" : self .突发事件 ()
302+ elif 选择 == "10" :
303+ try :
304+ 新价 = int (input ("输入新价格(1-40):" ))
305+ if 1 <= 新价 <= 40 :
306+ self .上网价格 = 新价
307+ print ("✅ 价格已改!" )
308+ except : pass
309+ input ("回车继续..." )
310+ elif 选择 == "11" : self .时间流逝 ()
311+ elif 选择 == "12" : self .快进2小时 ()
312+ elif 选择 == "13" : self .快进3小时 ()
313+ elif 选择 == "14" : self .生成存档码 ()
314+ elif 选择 == "15" : self .读取存档码 ()
315+ elif 选择 == "0" :
316+ clear ()
317+ print ("👋 感谢玩《网吧大亨·终极版》!" )
318+ break
319+ else :
320+ input ("❌ 输入错误,回车重试..." )
321+
322+ if __name__ == "__main__" :
323+ 游戏 = 网吧大亨终极版 ()
324+ 游戏 .开始游戏 ()
0 commit comments