对“绝地求生“源码调节

3 篇文章 0 订阅
1 篇文章 0 订阅

调整了一些界面和降低游戏难度

#include "c++.h"
using namespace std;
ExMessage msg;
struct ME {
	int x = 100; int y = 100; int life = 1000; int knapsack[18]; int Maximum_ammunition_capacity = 0;
	int Ammunition_capacity = 0; int primary_weapon = 0; int movement_speed = 0; int CrossHair[2] = { 0,0 };}me; bool not_game_over = true;
struct ENEMY {int x = 600; int y = 600; int life = 1000; int CrossHair[2] = { 0,0 };}enemy;
void CrossHair_draw() { line(me.x, me.y, me.CrossHair[0], me.CrossHair[1]); FlushBatchDraw();}
void CrossHair_draw_e() { setlinecolor(RED); line(enemy.x, enemy.y, enemy.CrossHair[0], enemy.CrossHair[1]); FlushBatchDraw(); setlinecolor(WHITE); }
void People(int x, int y) { fillcircle(me.x, me.y, 10); CrossHair_draw(); FlushBatchDraw(); }
void start(int x, int y, char c) {
	char i1[8] = { '!','@','#','$','%','?','*','+' };
	for (int i = 0; i < 8; i++) { outtextxy(x, y, i1[i]); Sleep(100); FlushBatchDraw(); }outtextxy(x, y, c); FlushBatchDraw();}
void Main_weapon_display() {
	if (me.primary_weapon == 1) {IMAGE a; loadimage(&a, _T("QW-M416 - x.jpg")); putimage(me.x-50,me.y-30, &a);FlushBatchDraw();}
	if (me.primary_weapon == 2) { IMAGE a; loadimage(&a, _T("QW-S686 - x.jpg")); putimage(me.x - 50, me.y - 30, &a); FlushBatchDraw(); }
	if (me.primary_weapon == 3) { IMAGE a; loadimage(&a, _T("QW-M24 - x.jpg")); putimage(me.x - 50, me.y - 30, &a); FlushBatchDraw(); }
	IMAGE a; loadimage(&a, _T("QW-M416 - x.jpg")); putimage(enemy.x - 50,enemy.y - 30, &a); FlushBatchDraw();}
bool timecout() {
	int of_time = 0; int p = 0; time_t timep; struct tm* tp; time(&timep); tp = localtime(&timep); p = tp->tm_sec;
	if (of_time != p) { of_time = p; return false; }
	else { return true; }}
struct itme { int itme_arrow[600][600]; }itme;
void music_settings(int x) {
	if (x == 1) { Beep(fa1, 100); Beep(sdo1, 100); }	
	if (x == 2) { Beep(fa, 200); Beep(do1, 100); Beep(si, 100); Beep(sdo1, 500); }
	if (x == 3) { Beep(qdo, 100); Beep(qre, 150); Beep(qmi, 200); }
	if (x == 4) { Beep(sre1, 300); }
	if (x == 5) { Beep(1000, 2);  }
	if (x == 6) { Beep(3000, 10); }
}
void enemy_draw() { setfillcolor(RED);fillcircle(enemy.x, enemy.y, 10);
IMAGE a; loadimage(&a, _T("QW-M416 - x.jpg")); putimage(enemy.x - 50, enemy.y - 30, &a); FlushBatchDraw(); setfillcolor(WHITE); }
void enemy_manage() {
	if (me.x - enemy.x<10 && me.x - enemy.x>-10&&me.y - enemy.y<10 && me.y - enemy.y>-10) {me.life -= 10;music_settings(6);}
	if (me.life < 0) { not_game_over = false; MessageBox(NULL, _T("你输了(嘲笑)"), _T(""), MB_OK);}
	if (enemy.CrossHair[0] > me.x)enemy.CrossHair[0] -= 3;
	if (enemy.CrossHair[0] < me.x)enemy.CrossHair[0] += 3;
	if (enemy.CrossHair[1] > me.y)enemy.CrossHair[1] -= 3;
	if (enemy.CrossHair[1] < me.y)enemy.CrossHair[1] += 3;
	CrossHair_draw_e();
	if (rand() % 30 == 0) {
		if (enemy.x > me.x)enemy.x -= 5;
		if (enemy.x < me.x)enemy.x += 5;
		if (enemy.y > me.y)enemy.y -= 5;
		if (enemy.y < me.y)enemy.y += 5;
	}
	if (rand() % 5 == 0) { music_settings(5);
	if(enemy.CrossHair[0]<(me.x+10)&& enemy.CrossHair[0] > (me.x - 10)&& enemy.CrossHair[1] < (me.y + 10)&& enemy.CrossHair[1] > (me.y - 10)) 
	{me.life -= 1; music_settings(6);}}
}
void loop() {peekmessage(&msg, EM_MOUSE);
	cleardevice(); IMAGE a; loadimage(&a, _T("R-C(1).jpg")); putimage(0, 0, &a);
	for (int x = 0; x < 600; x += 40)
		for (int y = 0; y < 600; y += 40) {
			if (itme.itme_arrow[x][y] == 1) { IMAGE a; loadimage(&a, _T("QW-M416.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 2) { IMAGE a; loadimage(&a, _T("QW-S686.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 3) { IMAGE a; loadimage(&a, _T("QW-M24.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 11) { IMAGE a; loadimage(&a, _T("WW-医疗包.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 12) { IMAGE a; loadimage(&a, _T("WW-304蓝针.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 13) { IMAGE a; loadimage(&a, _T("WW-能量饮料.jpg")); putimage(x, y, &a); }
		}
	fillcircle(me.x, me.y, 10); enemy_draw();  Main_weapon_display(); CrossHair_draw(); FlushBatchDraw();}
void Item_refres_management() {
	for (int x = 0; x < 600; x += 40)
		for (int y = 0; y < 600; y += 40) {
			if (itme.itme_arrow[x][y] == 1) { IMAGE a; loadimage(&a, _T("QW-M416.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 2) { IMAGE a; loadimage(&a, _T("QW-S686.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 3) { IMAGE a; loadimage(&a, _T("QW-M24.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 11) { IMAGE a; loadimage(&a, _T("WW-医疗包.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 12) { IMAGE a; loadimage(&a, _T("WW-304蓝针.jpg")); putimage(x, y, &a); }
			if (itme.itme_arrow[x][y] == 13) { IMAGE a; loadimage(&a, _T("WW-能量饮料.jpg")); putimage(x, y, &a); }} Main_weapon_display();}
void itmes_initialization() {
	for (int x = 0; x < 600; x += 40)
		for (int y = 0; y < 600; y += 40) {
			int i = rand() % 15 + 1;
			if (i == 2)itme.itme_arrow[x][y] = 1;/*步枪*/if (i == 3)itme.itme_arrow[x][y] = 2;/*散弹枪*/
			if (i == 4)itme.itme_arrow[x][y] = 3;/*狙击枪*/if (i == 5)itme.itme_arrow[x][y] = 11;/*医疗包*/
			if (i == 6)itme.itme_arrow[x][y] = 12;/*304蓝针*/if (i == 7)itme.itme_arrow[x][y] = 13;/*能量饮料*/}}
void Refresh_backpack() {
	for (int y = 0; y < 3; y++)for (int i = 0; i < 6; i++) {
		if (me.knapsack[i + y * 6] == 1) { IMAGE a; loadimage(&a, _T("QW-M416.jpg")); putimage(i * 100, y * 100 + 200, &a); }//12
		if (me.knapsack[i + y * 6] == 2) { IMAGE a; loadimage(&a, _T("QW-S686.jpg")); putimage(i * 100, y * 100 + 200, &a); }
		if (me.knapsack[i + y * 6] == 3) { IMAGE a; loadimage(&a, _T("QW-M24.jpg")); putimage(i * 100, y * 100 + 200, &a); }
		if (me.knapsack[i + y * 6] == 11) { IMAGE a; loadimage(&a, _T("WW-医疗包.jpg")); putimage(i * 100, y * 100 + 200, &a); }
		if (me.knapsack[i + y * 6] == 12) { IMAGE a; loadimage(&a, _T("WW-304蓝针.jpg")); putimage(i * 100, y * 100 + 200, &a); }
		if (me.knapsack[i + y * 6] == 13) { IMAGE a; loadimage(&a, _T("WW-能量饮料.jpg")); putimage(i * 100, y * 100 + 200, &a); }}}
void Backpack_item_usage_management(int serial_number) {
	if (me.knapsack[serial_number] == 1 || me.knapsack[serial_number] == 2 || me.knapsack[serial_number] == 3) {
		int x = MessageBox(NULL, _T("如果要更换主武器请按是,如果要丢弃这把武器请按否,如果手滑了请按取消"), _T(""), MB_YESNOCANCEL);
		if (x == 6) {me.primary_weapon = me.knapsack[serial_number]; if (me.knapsack[serial_number] == 1)me.Maximum_ammunition_capacity = 40;
			if (me.knapsack[serial_number] == 2)me.Maximum_ammunition_capacity = 8; if (me.knapsack[serial_number] == 3)me.Maximum_ammunition_capacity = 5;
			me.Ammunition_capacity = me.Maximum_ammunition_capacity;}
		if (x == 7)me.knapsack[serial_number] = 0;}
	if (me.knapsack[serial_number] == 11 || me.knapsack[serial_number] == 12 || me.knapsack[serial_number] == 13) {
		int x = MessageBox(NULL, _T("如果要使用这个药品请按确定,如果手滑了请按取消"), _T(""), MB_OKCANCEL); if (x == 1) {
			if (me.knapsack[serial_number] == 11) { me.life += 80; if (me.life > 1000)me.life = 1000; me.knapsack[serial_number] = 0; }
			if (me.knapsack[serial_number] == 12) { me.movement_speed += 10; if (me.movement_speed > 30)me.movement_speed = 30; me.knapsack[serial_number] = 0; }
			if (me.knapsack[serial_number] == 13) { me.life += 20; if (me.life > 1000)me.life = 1000; me.knapsack[serial_number] = 0; }
		}}Refresh_backpack(); FlushBatchDraw();}
void Backpack_selection_management() {peekmessage(&msg, EM_MOUSE);
	if (msg.x > 0 && msg.x < 100 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(0);
	if (msg.x > 100 && msg.x < 200 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(1);
	if (msg.x > 200 && msg.x < 300 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(2);
	if (msg.x > 300 && msg.x < 400 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(3);
	if (msg.x > 400 && msg.x < 500 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(4);
	if (msg.x > 500 && msg.x < 600 && msg.y>200 && msg.y < 225)if (msg.lbutton)Backpack_item_usage_management(5);
	if (msg.x > 0 && msg.x < 100 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(6);
	if (msg.x > 100 && msg.x < 200 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(7);
	if (msg.x > 200 && msg.x < 300 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(8);
	if (msg.x > 300 && msg.x < 400 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(9);
	if (msg.x > 400 && msg.x < 500 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(10);
	if (msg.x > 500 && msg.x < 600 && msg.y>300 && msg.y < 325)if (msg.lbutton)Backpack_item_usage_management(11);
	if (msg.x > 0 && msg.x < 100 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(12);
	if (msg.x > 100 && msg.x < 200 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(13);
	if (msg.x > 200 && msg.x < 300 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(14);
	if (msg.x > 300 && msg.x < 400 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(15);
	if (msg.x > 400 && msg.x < 500 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(16);
	if (msg.x > 500 && msg.x < 600 && msg.y>400 && msg.y < 425)if (msg.lbutton)Backpack_item_usage_management(17);}
void Backpack_management() {
	IMAGE a; loadimage(&a, _T("R-C(1) - talk.jpg")); putimage(0, 0, &a); Refresh_backpack(); bool i = true;	FlushBatchDraw();
	while (i) { if (kbhit()) { char i1 = _getch(); if (i1 == 'p' || i1 == 'P')i = false; } else Backpack_selection_management(); FlushBatchDraw(); }FlushBatchDraw();}
int path_difference() {int xh = 0; int yh = 0;
	if (enemy.x > me.x)xh = enemy.x - me.x;
	if (enemy.x < me.x)xh = me.x - enemy.x;
	if (enemy.y > me.y)yh = enemy.y - me.y;
	if (enemy.y < me.y)yh = me.y - enemy.y;
	int xz_r = (xh + yh) / 10;
	if (xz_r > 100)xz_r = 99;
	return xz_r;}
void f1() {
	for (int i = 0; i < 600; i++) {
		cleardevice(); IMAGE a; loadimage(&a, _T("R-C(1) - win.jpg")); putimage(0, 0, &a);
		loadimage(&a, _T("R-C(1) - KILL.jpg")); putimage(i, i, &a);  FlushBatchDraw(); if (i % 5 == 0)Sleep(1);}Sleep(500);
	for (int i = -600; i < 0; i++) { IMAGE a; loadimage(&a, _T("R-C(1) - winr.jpg")); putimage(i,200, &a);  if (i % 5 == 0)Sleep(1); FlushBatchDraw();}}
void shoot() {peekmessage(&msg, EM_MOUSE);
	if (me.Ammunition_capacity > 0) {
		cout << "shoot"<<"L"<<me.Ammunition_capacity; me.Ammunition_capacity -= 1; music_settings(5);
		if ((me.primary_weapon!=2&&(msg.x > (enemy.x - 10) && msg.x<(enemy.x + 10) && msg.y>(enemy.y - 10) && msg.y < (enemy.y + 10)))|| 
			(me.primary_weapon == 2 && (msg.x > (enemy.x - 100) && msg.x<(enemy.x + 100) && msg.y>(enemy.y - 100) && msg.y < (enemy.y + 100)))){
			if (me.primary_weapon == 1)enemy.life -= 15; if (me.primary_weapon == 2)enemy.life -= (100 - path_difference()); if (me.primary_weapon == 3)enemy.life -= 75;
			music_settings(6); cout << "FDX"; if (enemy.life < 0) { f1(); MessageBox(NULL, _T("你赢了"), _T(""), MB_OK); not_game_over = false; }}}
	else{ MessageBox(NULL, _T("没有子弹"), _T(""), MB_OK); }}
bool f2(int x) {
	if (me.x <= 570 && x == 1)return true;
	else if (me.x >= 30 && x == 2)return true;
	else if (me.y >= 30 && x == 3)return true;
	else if (me.y <= 570 && x == 4)return true;
	else return false;}
void key_management() {peekmessage(&msg, EM_MOUSE);
	if (kbhit()) {char i = _getch();
		if (i == 'A' || i == 'a')if(f2(2))me.x -= (5 + me.movement_speed); if (i == 'D' || i == 'd')if(f2(1))me.x += (5 + me.movement_speed);
		if (i == 'W' || i == 'w')if(f2(3))me.y -= (5 + me.movement_speed); if (i == 'S' || i == 's')if(f2(4))me.y += (5 + me.movement_speed);
		if (i == 'e' || i == 'E')Backpack_management(); if (i == 'k' || i == 'K')shoot(); loop(); FlushBatchDraw();}}
void Mouse_management() {
	peekmessage(&msg, EM_MOUSE);if (msg.lbutton) {
		for (int y_1=0; y_1 < 600; y_1 += 40)
		for (int x_1 = 0; x_1 < 600; x_1 += 40) {
		if (msg.x >= x_1 && msg.x <= (x_1 + 100) && msg.y >= y_1 && msg.y < (y_1 + 25) && itme.itme_arrow[x_1][y_1] != 0) {
		bool p = true; for (int j = 0;p&&j<18; j++) {if (me.knapsack[j] == 0) 
		{ me.knapsack[j] = itme.itme_arrow[x_1][y_1]; p = false; }}if (p)MessageBox(NULL, _T("背包没有空间了"), _T(""), MB_OK);}}}
		if (msg.x != me.CrossHair[0] || msg.y != me.CrossHair[1]){ me.CrossHair[0] = msg.x; me.CrossHair[1] = msg.y; CrossHair_draw();}}
void initialize() {
	srand(time(0)); initgraph(600, 600); BeginBatchDraw(); start(100, 270, _T('T')); music_settings(1); Sleep(1000); start(200, 270, _T('R')); music_settings(1);  Sleep(1000);
	start(300, 270, _T('Z')); music_settings(1);  Sleep(1000); start(400, 270, _T('出')); outtextxy(400, 270, _T('出')); music_settings(1); music_settings(4); FlushBatchDraw(); Sleep(1000);
	start(500, 270, _T('品')); outtextxy(500, 270, _T('品')); music_settings(1); music_settings(4); music_settings(4); FlushBatchDraw(); Sleep(1000);
	settextcolor(RED); cleardevice(); outtextxy(100, 270, 'T'); outtextxy(200, 270, 'R'); outtextxy(300, 270, 'Z');
	outtextxy(400, 270, _T('出'));  outtextxy(500, 270, _T('品')); music_settings(2);
	FlushBatchDraw(); Sleep(3000); cleardevice(); FlushBatchDraw(); for (int i = 0; i < 61; i++) { solidrectangle(0, 0, i * 10, 600); FlushBatchDraw(); Sleep(1); }
	cleardevice(); outtextxy(230, 270, _T("绝地求生--单人M版")); outtextxy(230, 350, _T("准备就绪-按F开始")); solidrectangle(0, 50, 600, 0); FlushBatchDraw(); _getch(); cleardevice();
	setfillcolor(BLUE); IMAGE a; loadimage(&a, _T("R-C.jpg")); putimage(0, 0, &a);  solidrectangle(0, 600, 600, 550);  FlushBatchDraw(); settextcolor(WHITE);}
bool Button_commands() {peekmessage(&msg, EM_MOUSE);
	if (msg.x > 0 && msg.x < 600 && msg.y>550 && msg.y < 600){peekmessage(&msg, EM_MOUSE);
		setfillcolor(RED); solidrectangle(0, 600, 600, 550); FlushBatchDraw(); if (msg.lbutton){
			setfillcolor(WHITE); for (int i = 0; i < 61; i++) { solidrectangle(0, 0, i * 10, 600); FlushBatchDraw(); Sleep(1); } return true;}}
	else { IMAGE a; loadimage(&a, _T("R-C.jpg")); putimage(0, 0, &a); setfillcolor(BLUE); solidrectangle(0, 600, 600, 550);  FlushBatchDraw(); return false; }}
void GameLoop() {while (not_game_over) {key_management();Mouse_management();
cleardevice(); IMAGE a; loadimage(&a, _T("R-C(1).jpg")); putimage(0, 0, &a); Item_refres_management(); cout << "(" << me.life << ")";
fillcircle(me.x, me.y, 10); enemy_draw();  Main_weapon_display(); CrossHair_draw(); enemy_manage(); FlushBatchDraw();}}
void START() {
	int _time = 30;IMAGE b; loadimage(&b, _T("R-C(1).jpg")); putimage(0, 0, &b);  FlushBatchDraw();
	for (int y = 300; y > -50; y--) {
		IMAGE a; loadimage(&a, _T("R-C(1).jpg"));
		putimage(0, 0, &a); IMAGE b; loadimage(&b, _T("R-C(1)(1).jpg")); putimage(0, y, &b); FlushBatchDraw(); Sleep(1); cleardevice();	}
	cleardevice(); putimage(0, 0, &b); while (_time > 0) { FlushBatchDraw(); if (timecout())_time--; key_management(); }
	cleardevice(); IMAGE e; loadimage(&e, _T("R-C(1)F3.jpg")); putimage(0, 0, &e); FlushBatchDraw(); Sleep(1000); cleardevice();
	loadimage(&e, _T("R-C(1)F2.jpg")); putimage(0, 0, &e); FlushBatchDraw(); Sleep(1000); cleardevice();
	loadimage(&e, _T("R-C(1)F1.jpg")); putimage(0, 0, &e); FlushBatchDraw(); Sleep(1000); cleardevice();
	loadimage(&e, _T("R-C(1)FGO.jpg")); putimage(0, 0, &e); FlushBatchDraw(); Sleep(1000); cleardevice();
	cleardevice(); IMAGE a; loadimage(&a, _T("R-C(1).jpg")); putimage(0, 0, &a); itmes_initialization();GameLoop();}
int main() {
	initialize(); 
	while (1) { while (!Button_commands());  START(); 	return 0;}} 

要下载压缩包的来主页下,没有压缩包图片玩不了

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Scratch是一种编程语言和在线社区,它可以帮助人们轻松学习编程并制作自己的互动项目。"掘地求生"是一款非常受欢迎的游戏,玩家需要在地下挖掘资源并建立自己的基地来生存。 在Scratch中制作"掘地求生"的源码相对比较复杂,需要一些编程基础知识。以下是一个简单的示例,用300字回答可能不够详细,但是可以提供一些思路: 首先,我们需要创建一个角色"玩家"和一个背景"地下"。角色代表玩家在游戏中的形象,可以是一个小人或者一个卡通角色,地下背景可以是一个有隧道和洞穴的地下场景。 接下来,我们为"玩家"添加一些动作和属性。比如,我们可以让玩家通过键盘操作进行上下左右的移动,以及挖掘地下的方块。我们还可以为玩家添加一些属性,比如生命值、能量等。生命值表示玩家的健康状况,能量表示玩家在挖掘地下时所消耗的资源。 然后,我们需要为地下添加一些障碍和资源。比如,我们可以在地下随机生成一些方块,代表不同种类的矿石或者宝石。玩家可以通过挖掘这些方块来获得资源,比如矿石可以用来制造工具和武器,宝石可以用来升级角色等等。 最后,我们可以为游戏添加一些额外的功能和互动。比如,我们可以给玩家设置一个任务,比如挖掘一定数量的矿石或者到达地下某个区域。当玩家完成任务时,可以获得额外的奖励。我们还可以设置一个计分系统,记录玩家的成绩和排行榜。 总的来说,制作"掘地求生"的源码需要考虑玩家的操作和行为,背景的设置,以及一些附加功能和互动。以上只是一个简单的示例,实际制作过程中还需要考虑更多的细节和情况。如果你对这方面感兴趣,可以在Scratch的网站上找到更多的教程和资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小唐C++

干累了,给个吧,求求了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值