📄 userfunc.cpp
字号:
#define ALLEGRO_STATICLINK
#include <allegro.h>
#ifdef _WIN32
#include <winalleg.h>
#endif
#include <iostream>
#include <string.h>
#include "types.h"
#include "functions.h"
#include "entity.h"
#include "context.h"
#define TOKENRESERVED -1
#define TOKENITEM 1
int save(int argc,char *argv[], void *Cprompt)
{
CONTEXTPROMPT *prompt=(CONTEXTPROMPT *) Cprompt;
if(argc==1)
{
std::cout << "Usage: save file.xml" << std::endl;
return 0;
}
if(prompt->save(argv[1])!=0)
{
std::cout << "Error writing " << argv[1] << "..." << std::endl;
}
else
{
std::cout << "Done writing " << argv[1] << "!" << std::endl;
}
}
int exitprog(int argc,char *argv[], void *Cprompt)
{
CONTEXTPROMPT *prompt=(CONTEXTPROMPT *) Cprompt;
prompt->active=0;
return 0;
}
int blank(int argc,char *argv[], void *Cprompt)
{
std::cout << "I AM A BLANK WORD. RELATE ME" << std::endl;
return 0;
}
int absorb(int argc, char *argv[], void *Cprompt)
{
CONTEXTPROMPT *prompt=(CONTEXTPROMPT *) Cprompt;
if(argc<=2)
{
std::cout << "Usage: absorb TOKEN DESCRIPTION" << std::endl;
return 1;
}
prompt->addtoken(argv[1],blank,argv[2],0,0);
return 0;
}
int object(int argc, char *argv[], void *Cprompt)
{
CONTEXTPROMPT *prompt=(CONTEXTPROMPT *) Cprompt;
AddObject(argv[1], atoi(argv[2]), (strcmp(argv[3],"NULL")==0)?NULL:argv[3] , atoi(argv[4]), argv[5], atoi(argv[6]), atoi(argv[7]), atoi(argv[8]), atoi(argv[9]));
return 1337;
}
void startupprompt(void *Cprompt)
{
CONTEXTPROMPT *prompt=(CONTEXTPROMPT *) Cprompt;
prompt->addtoken("save",save,"save function",0,TOKENRESERVED);
prompt->addtoken("object",object,"object function",0,TOKENRESERVED);
prompt->addtoken("absorb",absorb,"absorb function",0,TOKENRESERVED);
prompt->addtoken("exit",exitprog,"EXIT",0,TOKENRESERVED);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -