/////////////////////////////////////////////////////////////////////////////// // area_visit - Controls exploration tracking /////////////////////////////////////////////////////////////////////////////// void main() { object oMod=GetModule(); object oE=GetEnteringObject(); object oArea=GetArea(oE); string sID; int nN; if (GetIsPC(oE)==TRUE&&GetIsDM(oE)==FALSE) { // possible setting sID=GetLocalString(oE,"sTeamID"); if (GetLocalInt(oArea,"bExplored"+sID)==FALSE) { // explore this area SetLocalInt(oArea,"bExplored"+sID,TRUE); SetLocalInt(oE,"bExplored"+GetTag(oArea),TRUE); SendMessageToPC(oE,"You've discovered a new area for your team!"); nN=GetLocalInt(oE,"nAreasDiscovered"); nN++; SetLocalInt(oE,"nAreasDiscovered",nN); nN=GetLocalInt(oMod,"nTeamExploration"+sID); nN++; SetLocalInt(oMod,"nTeamExploration"+sID,nN); float fXP=GetLocalFloat(oMod,"fXPMultiplier"); int nXP=3; int nMult=FloatToInt(fXP); if (nMult==0) nMult=6; nXP=nXP*nMult; GiveXPToCreature(oE,nXP); } // explore this area else if (!GetLocalInt(oE,"bExplored"+GetTag(oArea))) { // first time for you SendMessageToPC(oE,"This is your first time to this area."); SetLocalInt(oE,"bExplored"+GetTag(oArea),TRUE); float fXP=GetLocalFloat(oMod,"fXPMultiplier"); int nXP=1; int nMult=FloatToInt(fXP); if (nMult==0) nMult=6; nXP=nXP*nMult; GiveXPToCreature(oE,nXP); } // firtt time for you } // possible setting }