πWhat an easy to build up your metaverse planet in Pirichain!

PreviousDouble Protect your assets using with Pirichain Authenticator FactorNextA new approach dependency factor using with PSce
Last updated
async function generateMyMetaVersePlanet()
{
if (PSDATA["metaCreated"]!=undefined)
return {error:1,message:'Metaverse Planet has been already generated!'};
PSDATA["metaCreated"]=true;
for (let x=1;x<10;x++)
for (let y=1;y<10;y++)
// has been sold?
{
PSDATA["coordinate_x_"+x+'_y_'+y]=false;
// opening price!
PSDATA["coordinate_x_"+x+'_y_'+y+"_PRICE"]=10;
// Owner Address which has belong to this place
PSDATA["coordinate_x_"+x+'_y_'+y+'_ownerAddress']=OWNER_ADDRESS;
}
return await Map.saveMap(JSON.stringify(PSDATA));
}
async function buyMetaversePlace(x,y,receiptAddress,newAmount)
{
if (PSDATA["coordinate_x_"+x+'_y_'+y+'_ownerAddress']!=EXECUTER_ADDRESS)
return {error:1,message:'This place is not belong your address!'};
if (AMOUNT<0)
return {error:1,message:'Please Send Metaverse Place Amount! ('+PSDATA["coordinate_x_"+x+'_y_'+y+"_PRICE"]+')'};
if (!AMOUNT)
return {error:1,message:'Please Send Metaverse Place Amount! ('+PSDATA["coordinate_x_"+x+'_y_'+y+"_PRICE"]+')'};
if (AMOUNT<parseFloat(PSDATA["coordinate_x_"+x+'_y_'+y+"_PRICE"]))
return {error:1,message:'This place is higher than '+minPIRIQuantity+' !'};
PSDATA["coordinate_x_"+x+'_y_'+y+"_PRICE"]=parseFloat(newAmount);
let metaverOwnerAddress=PSDATA["coordinate_x_"+x+'_y_'+y+'_ownerAddress'];
if (PSDATA[metaverOwnerAddress]==undefined)
PSDATA[metaverOwnerAddress]=0;
PSDATA[metaverOwnerAddress]+=parseFloat(AMOUNT);
PSDATA["coordinate_x_"+x+'_y_'+y+'_ownerAddress']=receiptAddress;
return await Map.saveMap(JSON.stringify(PSDATA));
}async function withdrawMySoldPlacePIRI()
{
if (parseFloat(PSDATA[EXECUTER_ADDRESS])>0)
{
PSDATA[EXECUTER_ADDRESS]=0;
return await Transaction.sendPIRI(EXECUTER_ADDRESS,parseFloat(PSDATA[EXECUTER_ADDRESS]));
}
else
return {error:1,message:'Your Amount is not upper than zero!'};
} async function listAllMetaVersePlaces()
{
return PSDATA;
}