game库1.0

前言

这个game库包含了鼠标函数常量三个模块。

可以让我们的代码变短,可读性也会变高。

看着饼干做的b_game库,心想着自己也做一个,感谢饼干。

代码

#ifndef game
#define game
#include<bits/stdc++.h>
#include<cstdlib>
#include<windows.h>
#include<conio.h>
#include<fstream>
using namespace std;
typedef unsigned long long ull;
namespace _game_cl
{
	const int ESC=27,Enter=13,Back=8,Tab=9,
	Shang=72,Xia=80,Zuo=75,You=77,
	Shift=VK_SHIFT,Shift_z=VK_LSHIFT,Shift_y=VK_RSHIFT,
	sb_z=VK_LBUTTON,sb_y=VK_RBUTTON,
	Ctrl=VK_CONTROL,Ctrl_z=VK_LCONTROL,Ctrl_y=VK_RCONTROL,
	Alt=VK_MENU,Alt_z=VK_LMENU,Alt_y=VK_RMENU;
}
namespace _game_sb
{
	const int sb_z=VK_LBUTTON,sb_y=VK_RBUTTON;
	struct hl{
		int h;
		int l;
	};
	void ycgb() {
		CONSOLE_CURSOR_INFO cciCursor;
		HANDLE hStdOut=GetStdHandle(STD_OUTPUT_HANDLE);
		if(GetConsoleCursorInfo(hStdOut,&cciCursor)) {
			cciCursor.bVisible=FALSE;
			SetConsoleCursorInfo(hStdOut,&cciCursor);
		}
		return;
	}
	void ycbj(){
		HANDLE hStdin=GetStdHandle(STD_INPUT_HANDLE);
		DWORD mode;
		GetConsoleMode(hStdin,&mode);
		mode &=~ENABLE_QUICK_EDIT_MODE;
		SetConsoleMode(hStdin, mode);
		return;
	}
	void ydgb(int x,int y) {
		COORD pos={x,y};
		HANDLE hOut=GetStdHandle(STD_OUTPUT_HANDLE);
		SetConsoleCursorPosition(hOut,pos);
	}
	bool sbax(char c){
		if(c=='l')return GetKeyState(sb_z)<0;
		if(c=='r')return GetKeyState(sb_y)<0;
		if(c=='m')return GetKeyState(sb_y)<0||GetKeyState(sb_z)<0;
	}
	hl sbwz(){
		hl hl;
		POINT p;
		HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);
		CONSOLE_FONT_INFO consoleCurrentFont;
		HWND h=GetForegroundWindow();
		GetCursorPos(&p);
		ScreenToClient(h,&p);
		GetCurrentConsoleFont(hOutput, FALSE, &consoleCurrentFont);
		hl.h=p.x/consoleCurrentFont.dwFontSize.X;
		hl.l=p.y/consoleCurrentFont.dwFontSize.Y;
		return hl;
	}
	bool pdsb(char c,int hx,int hd,int lx,int ld){//判断鼠标是否在位置内
		hl hl=sbwz();
		if(hl.h>=hx&&hl.h<=hd&&hl.l>=lx&&hl.l<=ld)return 1;
		return 0;
	}
}
namespace _game_hs{
	typedef unsigned long long ull;
	bool axj(int a){
		return GetKeyState(a)<0;
	}
	void color(int c)
	{
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);
		return;
	}
	void colorout(string s,int c){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),c);
		cout<<s;
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),15);
		return;
	}
	void out(string s,int q){
		for(int i=0;i<s.size();i++){
			cout<<s[i];
			Sleep(q);
		}
		return;
	}
	void zk(string s,char c,string cd){
		int n=s.size(),n1=cd.size();
		if(cd=="长度")n1=100;
		int tot=n1-n;
		for(int i=0;i<tot/2;i++)
		cout<<c;
		cout<<s;
		if(tot%2==1)tot++;
		tot/=2;
		for(int i=0;i<tot;i++)
		cout<<c;
		return;
	}
	void zc(string s,char t,string cd){
		cout<<s;
        int n1=cd.size();
        if(cd=="长度")n1=100;
		for(int i=s.size();i<n1;i++)
		cout<<t;
		return;
	}
	ull szi(string s){
		ull tot=0;
		for(int i=0;i<s.size();i++)
		tot=tot*10+s[i]-'0';
		return tot;
	}
	string izs(int a){
		string s="",s1="";
		while(a){
			s+=a%10+'0';
			a/=10;
		}
		for(int i=s.size()-1;i>=0;i--)
		s1+=s[i];
		return s1;
	}
	bool pdzf(char c){ 
		if(c>=32&&c<=127)return 1;
		return 0;
	}
	void zt(){
		cout<<"请按任意键继续. . .";
		char c;
		c=_getch();
		return;
	}
	void zt(int x){
		Sleep(x);
		return;
	}
}
#endif

安装方式(c++)

第一步

Ctrl+n新建一个文件

第二步

 把代码复制上去

第三步

点击另存为,把文件把存在D盘,文件名改成game.h,注意,后缀名为.h!!!

这就完成了!!!

引用方式

#include<D:\game.h>
using namespace std;
using namespace _game_cl;
using namespace _game_sb;
using namespace _game_hs;

 参考文章:b_game库

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值