+prints
This commit is contained in:
@@ -321,6 +321,23 @@ int32_t rogue_isvalidgame(struct CCcontract_info *cp,int32_t &gameheight,CTransa
|
||||
} else return(-1);
|
||||
}
|
||||
|
||||
void disp_playerdata(std::vector<uint8_t> playerdata)
|
||||
{
|
||||
struct rogue_player P; int32_t i; char packitemstr[512];
|
||||
if ( playerdata.size() > 0 )
|
||||
{
|
||||
for (i=0; i<playerdata.size(); i++)
|
||||
((uint8_t *)&P)[i] = playerdata[i];
|
||||
fprintf(stderr,"playerdata: gold.%d hp.%d strength.%d/%d level.%d exp.%d dl.%d\n",P.gold,P.hitpoints,P.strength&0xffff,P.strength>>16,P.level,P.experience,P.dungeonlevel);
|
||||
for (i=0; i<P.packsize&&i<MAXPACK; i++)
|
||||
{
|
||||
rogue_packitemstr(packitemstr,&P.roguepack[i]);
|
||||
fprintf(stderr,"%d: %s\n",packitemstr);
|
||||
}
|
||||
fprintf(stderr,"\n");
|
||||
}
|
||||
}
|
||||
|
||||
UniValue rogue_playerobj(std::vector<uint8_t> playerdata,uint256 playertxid,uint256 tokenid,std::string symbol,std::string pname,uint256 gametxid)
|
||||
{
|
||||
int32_t i,vout,spentvini,numvouts,n=0; uint256 txid,spenttxid,hashBlock; struct rogue_player P; char packitemstr[512],*datastr=0; UniValue obj(UniValue::VOBJ),a(UniValue::VARR); CTransaction tx;
|
||||
@@ -944,7 +961,7 @@ char *rogue_extractgame(int32_t makefiles,char *str,int32_t *numkeysp,std::vecto
|
||||
{
|
||||
UniValue obj;
|
||||
seed = rogue_gamefields(obj,maxplayers,buyin,gametxid,rogueaddr);
|
||||
fprintf(stderr,"(%s) found baton %s numkeys.%d seed.%llu playerdata.%d playertxid.%s\n",pname.size()!=0?pname.c_str():Rogue_pname.c_str(),batontxid.ToString().c_str(),numkeys,(long long)seed,(int32_t)playerdata.size(),playertxid.GetHex().c_str());
|
||||
//fprintf(stderr,"(%s) found baton %s numkeys.%d seed.%llu playerdata.%d playertxid.%s\n",pname.size()!=0?pname.c_str():Rogue_pname.c_str(),batontxid.ToString().c_str(),numkeys,(long long)seed,(int32_t)playerdata.size(),playertxid.GetHex().c_str());
|
||||
memset(&P,0,sizeof(P));
|
||||
if ( playerdata.size() > 0 )
|
||||
{
|
||||
@@ -970,9 +987,9 @@ fprintf(stderr,"(%s) found baton %s numkeys.%d seed.%llu playerdata.%d playertxi
|
||||
fclose(fp);
|
||||
}
|
||||
}
|
||||
fprintf(stderr,"call replay2\n");
|
||||
//fprintf(stderr,"call replay2\n");
|
||||
num = rogue_replay2(newplayer,seed,keystrokes,numkeys,playerdata.size()==0?0:&P,0);
|
||||
fprintf(stderr,"back replay2\n");
|
||||
//fprintf(stderr,"back replay2\n");
|
||||
newdata.resize(num);
|
||||
for (i=0; i<num; i++)
|
||||
{
|
||||
@@ -1078,15 +1095,12 @@ int32_t rogue_playerdata_validate(int64_t *cashoutp,uint256 &playertxid,struct C
|
||||
*cashoutp = 0;
|
||||
roguepk = GetUnspendable(cp,0);
|
||||
GetCCaddress1of2(cp,rogueaddr,roguepk,pk);
|
||||
fprintf(stderr,"call extractgame\n");
|
||||
if ( (keystrokes= rogue_extractgame(0,str,&numkeys,newdata,seed,playertxid,cp,gametxid,rogueaddr)) != 0 )
|
||||
{
|
||||
fprintf(stderr,"numkeys.%d rogue_extractgame %s\n",numkeys,gametxid.GetHex().c_str());
|
||||
free(keystrokes);
|
||||
sprintf(fname,"rogue.%llu.pack",(long long)seed);
|
||||
remove(fname);
|
||||
|
||||
fprintf(stderr,"extracted.(%s)\n",str);
|
||||
for (i=0; i<playerdata.size(); i++)
|
||||
((uint8_t *)&P)[i] = playerdata[i];
|
||||
if ( P.amulet != 0 )
|
||||
@@ -1116,6 +1130,8 @@ fprintf(stderr,"extracted.(%s)\n",str);
|
||||
}
|
||||
return(0);
|
||||
}
|
||||
disp_playerdata(newdata);
|
||||
disp_playerdata(playerdata);
|
||||
if ( P.gold <= 0 || P.hitpoints <= 0 || (P.strength&0xffff) <= 0 || P.level <= 0 || P.experience <= 0 || P.dungeonlevel <= 0 )
|
||||
{
|
||||
//P.gold = (P.gold * 8) / 10;
|
||||
|
||||
Reference in New Issue
Block a user