JeuxOnLineForumsPlusConnectés : 216 (sites) | 382 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > [SCRIPT] Fonctions Database: RSS
   
Répondre
Partager Outils Rechercher
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 

[SCRIPT] Fonctions Database:

Bon voilà, normalement cela devrait marcher ainsi, je verrai avec Jaha pour faire des test .

Bon en gros j'ai fais ces fonctions pour aider ceux qui avaient le puma, mais aussi surtout au cas ou comme c'est une beta si bioware décide de changer les noms de leurs fonctions, cela sera plus simple pour ne pas remodifer tout le code .
Aussi sur le fait de rajouter des sécurités comme le dépassement des 32 caractères. J'ai aussi rajouté le fait que vous pouvez nommez 2 sauvegardes à l'identique ce que ne proposez pas bioware.

Pour ceux qui ne posséderont que la database, j'ai fais une bibliothèque pour mon module que je vous offre :

Code PHP:
//***********************************
//           fonct_dbbio
//  SCRIPT: FONCTIONS SECURITES POUR LA DATABASE BIOWARE
//  FAIT PAR RAT POUR MASKADO ET PAORN [url]http://paorn.nexusjdr.com[/url]
//************************************
//***********************
//   CONSTANTE
//***********************
int MAX_CAR_VAR=31//(32-1) Car On prend 1 obligatoirement pour pouvoir donner le mm nom a un int et un string etc...
void MessageServerPAORN(string sText);
//*********************************************
// FONCTIONS REMODIFIES PAR RAT
void SetPAORNInt(string var_name,int var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void SetPAORNString(string var_namestring var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void SetPAORNFloat(string var_namefloat var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void SetPAORNLoc(string var_namelocation the_loc,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID );
void StorePAORNObj(string var_nameobject oObject,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID );
void SetPAORNVec(string var_namevector vVector,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID );

void DeletePAORNInt(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID );
void DeletePAORNString(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void DeletePAORNFloat(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void DeletePAORNLoc(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void DeletePAORNObj(string var_name,string ScampagnName="CONFIG_DB",object oOwner OBJECT_INVALID,object oPC=OBJECT_INVALID);
void DeletePAORNVec(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
void DeletePAORNDB(string ScampagnName);

int GetPAORNInt(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
string GetPAORNString(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
float GetPAORNFloat(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
location GetPAORNLoc(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);
object RetrievePAORNObj(string var_name,location lLoc,string ScampagnName="CONFIG_DB",object oOwner OBJECT_INVALID,object oPC=OBJECT_INVALID);
location GetPAORNVec(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID);



string StrReplace(string s1string s2string s3)
{
  
int nTemp;
  
int nL GetStringLength(s3);
  
int nLength GetStringLength(s1);
  
string sTemp;
  
string sR "";

  while ((
nTemp FindSubString(s3s1)) >= 0)
    {
    
sTemp GetStringLeft(s3nTemp);
    
s3 GetStringRight(s3nL nLength nTemp);
    
sR sR sTemp s2;
    
nL GetStringLength(s3);
    }
  
sR+=s3;

  return 
sR;
}


void MessageServerPAORN(string sText)
{
 
object oPC=GetFirstPC();

 while (
GetIsObjectValid(oPC))
 {
   
SendMessageToPC(oPC,"[SERVER] "+sText);
   
oPC=GetNextPC();
 }

}


// ******************************************** //
// SET (WRITE) FUNCTIONS
// ******************************************** //

void SetPAORNInt(string var_name,int var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
       if (
GetStringLength(var_name)<=MAX_CAR_VAR)
       
SetCampaignInt(ScampagnName,var_name"I",var_val,oPC);
       else
       
MessageServerPAORN("Erreur de La fonction SetPAORNInt::Depassement des 32 caracteres du var_name");
}

void SetPAORNString(string var_namestring var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
     
var_val=StrReplace("\n","°°",var_val);
    if (
GetStringLength(var_name)<=MAX_CAR_VAR)
    
SetCampaignString (ScampagnName,var_name"S",var_val,oPC);
     else
    
MessageServerPAORN("Erreur de La fonction SetPAORNString::Depassement des 32 caracteres du var_name");
}



void SetPAORNFloat(string var_namefloat var_val,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
     if (
GetStringLength(var_name)<=MAX_CAR_VAR)
       
SetCampaignFloat(ScampagnName,var_name"F",var_val,oPC);
      else
    
MessageServerPAORN("Erreur de La fonction SetPAORNFloat::Depassement des 32 caracteres du var_name");

}



void SetPAORNLoc(string var_namelocation the_loc,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID )
{
if (
GetStringLength(var_name)<=MAX_CAR_VAR)
  
SetCampaignLocation(ScampagnName,var_name "L",the_loc,oPC);
   else
  
MessageServerPAORN("Erreur de La fonction SetPAORNLoc::Depassement des 32 caracteres du var_name");
}

void StorePAORNObj(string var_nameobject oObject,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID )
{
if (
GetStringLength(var_name)<=MAX_CAR_VAR)
  
StoreCampaignObject(ScampagnName,var_name "O",oObject,oPC);
   else
  
MessageServerPAORN("Erreur de La fonction SetPAORNObj::Depassement des 32 caracteres du var_name");
}

void SetPAORNVec(string var_namevector vVector,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID )
{
 if (
GetStringLength(var_name)<=MAX_CAR_VAR)
  
SetCampaignVector  (ScampagnName,var_name "V",vVector,oPC);
   else
  
MessageServerPAORN("Erreur de La fonction SetPAORNVec::Depassement des 32 caracteres du var_name");
}


// ******************************************** //
// DELETE (REMOVE) FUNCTIONS
// ******************************************** //

void DeletePAORNInt(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID )
{

  if (
GetCampaignInt(ScampagnName,var_name"I",oPC)!=0)
   
DeleteCampaignVariable(ScampagnName,var_name"I",oPC);
  else
  
MessageServerPAORN("Erreur de La fonction DeletePAORNInt::Record non trouvé dans la Database");
}

void DeletePAORNString(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
if (
GetCampaignString(ScampagnName,var_name"S",oPC)!="")
   
DeleteCampaignVariable(ScampagnName,var_name"S",oPC);
else
  
MessageServerPAORN("Erreur de La fonction DeletePAORNString::Record non trouvé dans la Database");

}

void DeletePAORNFloat(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
  if (
GetCampaignFloat(ScampagnName,var_name"F",oPC)!=0.0f)
  
DeleteCampaignVariable(ScampagnName,var_name"F",oPC);
  else
  
MessageServerPAORN("Erreur de La fonction DeletePAORNloat::Record non trouvé dans la Database");
}

void DeletePAORNLoc(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
vector vVect=GetPositionFromLocation(GetCampaignLocation(ScampagnName,var_name"L",oPC));
float  fAngle=VectorToAngle(vVect);
if (
fAngle!=0.0f)
DeleteCampaignVariable(ScampagnName,var_name"L",oPC);
else
MessageServerPAORN("Erreur de La fonction DeletePAORNLoc::Record non trouvé dans la Database");
}

 
void DeletePAORNObj(string var_name,string ScampagnName="CONFIG_DB",object oOwner OBJECT_INVALID,object oPC=OBJECT_INVALID)
{
  
ScampagnName,var_name+"O",lLoc,oOwner,oPC);
   
DeleteCampaignVariable(ScampagnName,var_name"O",oPC);
 }

void DeletePAORNVec(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
vector vVect=GetCampaignVector(ScampagnName,var_name"V",oPC);
float  fAngle=VectorToAngle(vVect);
if (
fAngle!=0.0f)
DeleteCampaignVariable(ScampagnName,var_name"V",oPC);
else
MessageServerPAORN("Erreur de La fonction DeletePAORNVec::Record non trouvé dans la Database");
}

 
void DeletePAORNDB(string ScampagnName)
{
  
DestroyCampaignDatabase(ScampagnName);

}


// ******************************************** //
// GET (READ) FUNCTIONS
// ******************************************** //

int GetPAORNInt(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
  return 
GetCampaignInt(ScampagnName,var_name"I",oPC);
}

string GetPAORNString(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
       
string retVal=GetCampaignString(ScampagnName,var_name"S",oPC);
         
retVal=StrReplace("°°","\n",retVal);
       return 
retVal;
}

float GetPAORNFloat(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
 return 
GetCampaignFloat(ScampagnName,var_name"F",oPC)   ;
}

location GetPAORNLoc(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
 return 
GetCampaignLocation(ScampagnName,var_name"L",oPC);
}

object RetrievePAORNObj(string var_name,location lLoc,string ScampagnName="CONFIG_DB",object oOwner OBJECT_INVALID,object oPC=OBJECT_INVALID)
{
 return 
RetrieveCampaignObject(ScampagnName,var_name"O",lLoc,oOwner,oPC);
}

vector GetPAORNVec(string var_name,string ScampagnName="CONFIG_DB",object oPC=OBJECT_INVALID)
{
 return 
GetCampaignVector(ScampagnName,var_name"V",oPC);

Pour ceux qui possèdent le PUMA et le système de Flag de Tyn :

Code PHP:
#include "fonct_dbbio"

//***********************************
//           PWUM_FUNCTIONS
//  NOM: pwum_functions
//  SCRIPT: Adaptation de la Bibliothque du PUMA pour la database de bioware
//  FAIT PAR RAT POUR MASKADO ET PAORN [url]http://paorn.nexusjdr.com[/url]
//************************************
// ******************************************** //
// FUNCTION DECLARATIONS
// ******************************************** //
void PWUMLocationTimer(float fTimerCount=0.0);
void PWUMDateTimer(float fTimerCount=0.0);
int GetOffsetGameDate(int iOffset=0);
void SetPWUMInt(string var_name,int var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void SetPWUMString(string var_namestring var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void SetPWUMFloat(string var_namefloat var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void SetPWUMLocationC(string var_namelocation the_loc,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID );
void SetPWUMCalendar(int iOffsetDate);
void DeletePWUMInt(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID );
void DeletePWUMString(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void DeletePWUMFloat(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void DeletePWUMLocation(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
int GetPWUMInt(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
string GetPWUMString(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
float GetPWUMFloat(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
location GetPWUMLocation(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID);
void ResumePCLocation(object oPC);
void SetPCToSaveLocation(object oPC);
void SetPCToNotSaveLocation(object oPC);
//*************************
// Appel des nouvelles fonctions
//************************
//LES SET
void SetBanqueOr(string var_nameint var_val,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
void SetBanqueInv(string var_name,string var_val,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
//LES GET
int GetBanqueOr(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
string GetBanqueInv(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
// GESTION DES DELETE
void DeleteBanqueOr(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
void DeleteBanqueInv(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID);
//**************************
// Code pour PAORN
//***************************
//*************************
// Appel pour les Quetes
//************************
//LES SET
void SetQueteInt(string var_nameint var_val,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);
void SetQueteStr(string var_name,string var_val,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);
//LES GET
int GetQueteInt(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);
string GetQueteStr(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);
// GESTION DES DELETE
void DeleteQueteInt(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);
void DeleteQueteStr(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID);

// ******************************************** //
// UTILITIES (used by functions below)
// ******************************************** //

void PWUMLocationTimer(float fTimerCount=0.0)
{
    
object oPC GetFirstPC();
    
string sPCLocation;

    
// Loop through each PC
    
while (GetIsPC(oPC))
    {
        
// If PC is currently setup to save location
        
if (GetLocalInt(oPC"nSaveStatus") == 0)
        {
            
// store the PC location
            
sPCLocation GetPCPlayerName(oPC) + GetName(oPC) + "Cur";
            
SetPWUMLocationC(sPCLocationGetLocation(oPC));
            
SendMessageToPC(oPC"** Votre position a ete sauvegarde **");
        }
        
oPC GetNextPC();
    }

    
/* If this is not a one-shot call,
       recall this script after the directed delay */
    
if (fTimerCount 0.0)
      
DelayCommand(fTimerCountPWUMLocationTimer(fTimerCount));
}

void PWUMDateTimer(float fTimerCount=0.0)
{
  
SetPWUMInt("iPWUMDate"GetOffsetGameDate());
  
/* If this is not a one-shot call,
     recall this script after the directed delay */
  
if (fTimerCount 0.0)
    
DelayCommand(fTimerCountPWUMDateTimer(fTimerCount));
}

int GetOffsetGameDate(int iOffset=0)
{
  
/* If a negative number was given then
     this variable does not automatically expire. */
  
if (iOffset 0)
    return -
1;
  else
  
/* Otherwise, return the number of days from "0/0/0".
     Which means if a zero was sent, the variable
     expires at the end of the current game day.*/
    
{
      
// Get the game calendar date
      
int iYear=GetCalendarYear();
      
int iMonth=GetCalendarMonth();
      
int iDay=GetCalendarDay();
      
// Add to the appropriate integer until iOffset == 0
      
while (iOffset 335)
        {
          
iYear++;
          
iOffset -= 336;
        }
      while (
iOffset 27)
        {
          
iMonth++;
          
iOffset -= 28;
        }
      while (
iOffset 0)
        {
          
iDay++;
          
iOffset--;
        }
      
/* Now, if we have more than 28 days, roll the
         month, and if we have more than 12 months,
         roll the year - due to the way the year, month,
         and days were added above, it should be impossible
         to have more than 24 months or 56 days. */
      
if (iDay 28)
        {
          
iDay -= 28;
          
iMonth++;
        }
      if (
iMonth 12)
        {
          
iMonth -= 12;
          
iYear++;
        }
      return 
iYear*336 iMonth*28 iDay;
    }
}

// ******************************************** //
// SET (WRITE) FUNCTIONS
// ******************************************** //
void SetPWUMInt(string var_name,int var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
SetPAORNInt(var_name,var_val,ScampagnName,oPC);
}
void SetPWUMString(string var_namestring var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
SetPAORNString(var_name,var_val,ScampagnName,oPC);
}
void SetPWUMFloat(string var_namefloat var_val,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
SetPAORNFloat(var_name,var_val,ScampagnName,oPC);
}
void SetPWUMLocationC(string var_namelocation the_loc,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID )
{
SetPAORNLoc(var_name,the_loc,ScampagnName,oPC );
}

void SetPWUMCalendar(int iOffsetDate)
{
  
int iToday=GetOffsetGameDate(0);
  
/* Only set the date if the saved date is after
     the start of the module. */
  
if (iOffsetDate iToday)
    {
      
// Get "zero" date
      
int iYear=0;
      
int iMonth=0;
      
int iDay=0;
      
// Add to the appropriate integer until iOffset == 0
      
while (iOffsetDate 335)
        {
          
iYear++;
          
iOffsetDate -= 336;
        }
      while (
iOffsetDate 27)
        {
          
iMonth++;
          
iOffsetDate -= 28;
        }
      while (
iOffsetDate 1)
        {
          
iDay++;
          
iOffsetDate--;
        }
      
/* Now, if we have more than 28 days, roll the
         month, and if we have more than 12 months,
         roll the year - due to the way the year, month,
         and days were added above, it should be impossible
         to have more than 24 months or 56 days. */
      
if (iDay 28)
        {
          
iDay -= 28;
          
iMonth++;
        }
      if (
iMonth 12)
        {
          
iMonth -= 12;
          
iYear++;
        }
      
SetCalendar(iYeariMonthiDay);
    }
}

// ******************************************** //
// DELETE (REMOVE) FUNCTIONS
// ******************************************** //
void DeletePWUMInt(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID )
{
DeletePAORNInt(var_name,ScampagnName,oPC);
}

void DeletePWUMString(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
DeletePAORNString(var_name,ScampagnName,oPC);
}

void DeletePWUMFloat(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
DeletePAORNFloat(var_name,ScampagnName,oPC);
}

void DeletePWUMLocation(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
DeletePAORNLoc(var_name,ScampagnName,oPC);
}


// ******************************************** //
// GET (READ) FUNCTIONS
// ******************************************** //
int GetPWUMInt(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
return 
GetPAORNInt(var_name,ScampagnName,oPC);
}

string GetPWUMString(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
return 
GetPAORNString(var_name,ScampagnName,oPC);
}

float GetPWUMFloat(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
return 
GetPAORNFloat(var_name,ScampagnName,oPC);
}

location GetPWUMLocation(string var_name,string ScampagnName="PUMA_DB",object oPC=OBJECT_INVALID)
{
 return 
GetPAORNLoc(var_name,ScampagnName,oPC);
}

// ******************************************** //
// PC LOCATION FUNCTIONS
// ******************************************** //
void ResumePCLocation(object oPC)
{
    if (!
GetIsPC(oPC))
    {
        return;  
//buh-bye
    
}

    
AssignCommand(oPCActionWait(2.0));    //2.0 is long enough to account for most network lag

    // effects can be added to go with this:
    
string sPCLocation GetPCPlayerName(oPC) + GetName(oPC) + "Cur";

 
AssignCommand(oPCActionJumpToLocation(GetPWUMLocation(sPCLocation)));

}

void SetPCToSaveLocation(object oPC)
{
    if (!
GetIsPC(oPC))
    {
        return;  
//buh-bye
    
}

    
SetLocalInt(oPC"nSaveStatus"0);   //set to save
}

void SetPCToNotSaveLocation(object oPC)
{
    if (!
GetIsPC(oPC))
    {
        return;  
//buh-bye
    
}

    
SetLocalInt(oPC"nSaveStatus"1);   //set to not save
}

////////////////////////////////////
//   NOUVELLES FONCTIONS       ////
//   FAIT PAR RAT POUR PUMA   ////
/////////////////////////////////
//*****************************
//    FONCTIONS BANQUE
//*****************************

// GESTION DES SET

void SetBanqueOr(string var_nameint var_val,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
  
SetPWUMInt(var_name,var_val,ScampagnName,oPC);
}

void SetBanqueInv(string var_name,string var_val,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
 
SetPWUMString(var_name,var_val,ScampagnName,oPC);
}

// GESTION DES GET

int GetBanqueOr(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
return 
GetPWUMInt(var_name,ScampagnName,oPC);

}

string GetBanqueInv(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
 return 
GetPWUMString(var_name,ScampagnName,oPC);
}

// GESTION DES DELETE

void DeleteBanqueOr(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
DeletePWUMInt(var_name,ScampagnName,oPC);
}


void DeleteBanqueInv(string var_name,string ScampagnName="BANK_DB",object oPC=OBJECT_INVALID)
{
DeletePWUMString(var_name,ScampagnName,oPC);
}

////////////////////////////////
//  Code pour PAORN         ///
//////////////////////////////

//*****************************
//    FONCTIONS QUETES
//*****************************

// GESTION DES SET

void SetQueteInt(string var_nameint var_val,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID )
{
SetPWUMInt(var_name,var_val,ScampagnName,oPC);
}

void SetQueteStr(string var_namestring var_val,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID)
{
 
SetPWUMString(var_name,var_val,ScampagnName,oPC);
}

// GESTION DES GET

int GetQueteInt(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID)
{
 return 
GetPWUMInt(var_name,ScampagnName,oPC);

}

string GetQueteStr(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID)
{
 return 
GetPWUMString(var_name,ScampagnName,oPC);
}

// GESTION DES DELETE

void DeleteQueteInt(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID)
{
 
DeletePWUMInt(var_name,ScampagnName,oPC);
}


void DeleteQueteStr(string var_name,string ScampagnName="QUETES_DB",object oPC=OBJECT_INVALID)
{
 
DeletePWUMString(var_name,ScampagnName,oPC);

Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
[Désolé eM, mais mon code était trop long donc j'ai du le faire sur 2 pages ]

et les flags :

Code PHP:
#include "pwum_functions"

//:: Definition des fonctions
// Fonction Althea
// Cree un debug
void Debug(object oPCstring sDebug);
// Fonction Althea
// Recupere le nom d'une variable flaguee sur un joueur
string GetFlagName(object oPlayerstring sFlag);
// Fonction Althea
// Defini le flag sFlag sur le joueur oPlayer a la valeur nValue
void SetFlagInt(object oPlayerstring sFlagint nValue,string ScampagnName="PUMA_DB");
// Fonction Althea
// Defini le flag sFlag sur le joueur oPlayer a la valeur fValue
void SetFlagFloat(object oPlayerstring sFlagfloat fValue,string ScampagnName="PUMA_DB");
// Fonction Althea
// Defini le flag sFlag sur le joueur oPlayer a la valeur sValue
void SetFlagString(object oPlayerstring sFlagstring sValue,string ScampagnName="PUMA_DB");
// Fonction Althea
// Defini le flag sFlag sur le joueur oPlayer a la valeur lValue
void SetFlagLocation(object oPlayerstring sFlaglocation lValue,string ScampagnName="PUMA_DB");
// Fonction Althea
// Recupere le flag sFlag sur le joueur oPlayer
int GetFlagInt(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");
// Fonction Althea
// Recupere le flag sFlag sur le joueur oPlayer
float GetFlagFloat(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");
// Fonction Althea
// Recupere le flag sFlag sur le joueur oPlayer
string GetFlagString(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");
// Fonction Althea
// Recupere le flag sFlag sur le joueur oPlayer
location GetFlagLocation(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");

void DeleteFlagInt(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");
void DeleteFlagString(object oPlayerstring sFlag,string ScampagnName="PUMA_DB") ;
void DeleteFlagFloat(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");
void DeleteFlagLocation(object oPlayerstring sFlag,string ScampagnName="PUMA_DB");

void SetFlagOr(object oPlayerstring sFlagint nValue,string ScampagnName="BANK_DB");
void DeleteFlagOr(object oPlayerstring sFlag,string ScampagnName="BANK_DB");
void SetFlagInv(object oPlayerstring sFlagstring sValue,string ScampagnName="BANK_DB");
void DeleteFlagInv(object oPlayerstring sFlag,string ScampagnName="BANK_DB");
int GetFlagOr(object oPlayerstring sFlag,string ScampagnName="BANK_DB");
string GetFlagInv(object oPlayerstring sFlag,string ScampagnName="BANK_DB");

//Code POUR PAORN
void SetFlagQInt(object oPlayerstring sFlagint nValue,string ScampagnName="QUETES_DB");
void DeleteFlagQInt(object oPlayerstring sFlag,string ScampagnName="QUETES_DB");
void SetFlagQStr(object oPlayerstring sFlagstring sValue,string ScampagnName="QUETES_DB");
void DeleteFlagQStr(object oPlayerstring sFlag,string ScampagnName="QUETES_DB");
int GetFlagQInt(object oPlayerstring sFlag,string ScampagnName="QUETES_DB");
string GetFlagQStr(object oPlayerstring sFlag,string ScampagnName="QUETES_DB");


string GetFlagName(object oPlayerstring sFlag)
{

    
//Verification des informations fournies
    
string sReturn;
    if(
GetIsPC(oPlayer) && sFlag != "")
    {       
//Execution du script
        //Recuperation des informations du joueur
        
string sPlayerName GetPCPlayerName(oPlayer);
        
string sName       GetName(oPlayer);
        
string sPublicKey  GetPCPublicCDKey(oPlayer);
        
//Definition de la valeur
        
sReturn            sPlayerName+sPublicKey+sName+sFlag;
    }else{  
//Retour d'une erreur
        //Definition de la valeur
        
sReturn            "ERREUR DANS L'APPEL DE LA FONCTION GetFlagName";
    }
    
//Renvoit de la valeur
    
return sReturn;
}


void SetFlagInt(object oPlayerstring sFlagint nValue,string ScampagnName="PUMA_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+IntToString(nValue));
    
SetPAORNInt(sFlag,nValue,ScampagnName,oPlayer); //Enregistrement de la variable
}

void DeleteFlagInt(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
   
DeletePAORNInt(sFlag,ScampagnName,oPlayer);                  //Enregistrement de la variable
}



void SetFlagFloat(object oPlayerstring sFlagfloat fValue,string ScampagnName="PUMA_DB")
{
   
// Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+FloatToString(fValue));
    
SetPAORNFloat(sFlag,fValue,ScampagnName,oPlayer);
}

void DeleteFlagFloat(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    
DeletePAORNFloat(sFlag,ScampagnName,oPlayer);
}


void SetFlagString(object oPlayerstring sFlagstring sValue,string ScampagnName="PUMA_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+sValue);

    
SetPAORNString(sFlag,sValue,ScampagnName,oPlayer);
}

void DeleteFlagString(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    
DeletePAORNString(sFlag,ScampagnName,oPlayer);
}


void SetFlagLocation(object oPlayerstring sFlaglocation lValue,string ScampagnName="PUMA_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" modifie");
    
SetPAORNLoc(sFlag,lValue,ScampagnName,oPlayer);
}

void DeleteFlagLocation(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    
DeletePAORNLoc(sFlag,ScampagnName,oPlayer);
}



int GetFlagInt(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    return 
GetPAORNInt(sFlag,ScampagnName,oPlayer);
}

float GetFlagFloat(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    return 
GetPAORNFloat(sFlag,ScampagnName,oPlayer);
}

string GetFlagString(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    return 
GetPAORNString(sFlag,ScampagnName,oPlayer);
}

location GetFlagLocation(object oPlayerstring sFlag,string ScampagnName="PUMA_DB")
{
    return 
GetPAORNLoc(sFlag,ScampagnName,oPlayer);
}

//**********************************************
//  GESTION DES FLAGS POUR LE SYSTEME DE BANQUE
//           FAIT PAR RAT POUR PUMA
//**********************************************

void SetFlagOr(object oPlayerstring sFlagint nValue,string ScampagnName="BANK_DB")
{
   
// Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+IntToString(nValue));
    
SetPWUMInt(sFlag,nValue,ScampagnName,oPlayer);                 //Enregistrement de la variable
}

void DeleteFlagOr(object oPlayerstring sFlag,string ScampagnName="BANK_DB")
{
   
DeletePWUMInt(sFlag,ScampagnName,oPlayer);                 //Enregistrement de la variable
}


void SetFlagInv(object oPlayerstring sFlagstring sValue,string ScampagnName="BANK_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+sValue);
   
SetPWUMString(sFlag,sValue,ScampagnName,oPlayer);
}

void DeleteFlagInv(object oPlayerstring sFlag,string ScampagnName="BANK_DB")
{
   
DeletePWUMString(sFlag,ScampagnName,oPlayer);
}


int GetFlagOr(object oPlayerstring sFlag,string ScampagnName="BANK_DB")
{
    return 
GetPWUMInt(sFlag,ScampagnName,oPlayer);
}


string GetFlagInv(object oPlayerstring sFlag,string ScampagnName="BANK_DB")
{
    return 
GetPWUMString(sFlag,ScampagnName,oPlayer);
}


//**********************************************
//  GESTION DES FLAGS POUR LE SYSTEME DE Quete
//           FAIT PAR RAT POUR PAORN
//**********************************************

void SetFlagQInt(object oPlayerstring sFlagint nValue,string ScampagnName="QUETES_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+IntToString(nValue));
    
SetPWUMInt(sFlag,nValue,ScampagnName,oPlayer);                  //Enregistrement de la variable
}

void DeleteFlagQInt(object oPlayerstring sFlag,string ScampagnName="QUETES_DB")
{
    
DeletePWUMInt(sFlag,ScampagnName,oPlayer);                  //Enregistrement de la variable
}


void SetFlagQStr(object oPlayerstring sFlagstring sValue,string ScampagnName="QUETES_DB")
{
    
//Debug(oPlayer,"Flag "+sFlag+" du personnage "+GetName(oPlayer)+" defini a "+sValue);
   
SetPWUMString(sFlag,sValue,ScampagnName,oPlayer);
}

void DeleteFlagQStr(object oPlayerstring sFlag,string ScampagnName="QUETES_DB")
{
    
DeletePWUMString(sFlag,ScampagnName,oPlayer);
}


int GetFlagQInt(object oPlayerstring sFlag,string ScampagnName="QUETES_DB")
{
    return 
GetPWUMInt(sFlag,ScampagnName,oPlayer);
}


string GetFlagQStr(object oPlayerstring sFlag,string ScampagnName="QUETES_DB")
{
    return 
GetPWUMString(sFlag,ScampagnName,oPlayer);
}




//****************************
//    FIN DU CODE DE PAORN
//****************************






 //:: Definition des constantes
int      DEBUG_OFF                  0;
int      DEBUG_PLAYER               1;
int      DEBUG_DM                   2;
int      DEBUG_PLAYER_LOGS          3;
int      DEBUG_DM_LOGS              4;
int      DEBUG_TYPE                 DEBUG_OFF;

//:: Definition des fonctions

void Debug(object oPCstring sDebug)
{
    
//Switch a qui envoyer le debug
    
switch(DEBUG_TYPE)
    {
        case 
0:
            
//Pas de debug
            
break;
        case 
1:
        case 
3:
            
//Debug au joueur
            
if(GetIsPC(oPC))
            {
                
SendMessageToPC(oPC,"DEBUG: "+sDebug);
            }
            break;
        case 
2:
        case 
4:
            
//Debug aux DMs
            
SendMessageToAllDMs("DEBUG: "+sDebug);
            break;
        default:
            break;
    }
    
//Switch pour inscription aux logs
    
switch(DEBUG_TYPE)
    {
        case 
0:
        case 
1:
        case 
2:
            
//Pas de logs
            
break;
        case 
3:
        case 
4:
            
//Inscription aux logs
            
WriteTimestampedLogEntry("DEBUG: "+sDebug);
            break;
        default:
            break;
    }

Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
y'a pas de mal


Sacre boulot (-O_O-)
Lien direct vers le message - Vieux
Avatar de Archamedes_Fr
Archamedes_Fr
Alpha & Oméga
 
Avatar de Archamedes_Fr
 
tout simplement sidérant.

Merci de faire évoluer ton système.
Lien direct vers le message - Vieux
Avatar de Jaha Effect
Jaha Effect
Alpha & Oméga
 
Avatar de Jaha Effect
 
Bon boulot

Jaha Effect
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
Citation:
Provient du message de eMRaistlin
y'a pas de mal


Sacre boulot (-O_O-)
Merci

Citation:
Provient du message de Archamedes_Fr
tout simplement sidérant.

Merci de faire évoluer ton système.

Ba de rien , je trouvais ça logique pour pas que vous ayez trop de boulot à refaire.
Car si vous êtes comme moi, ou j'ai souvent dépassé les 32, vous aurez moins de boulot à réduire la taille que de tout refaire

Enfin , merci pour toutes vos remarques


Citation:
Bon boulot

Jaha Effect
Merci Jaha , et Merci pour tes conseils
Lien direct vers le message - Vieux
Avatar de Skanzo Sylan
Skanzo Sylan
Empereur
 
Avatar de Skanzo Sylan
 
C'est fort!

Même un peu trop.. kof! kof!


Dommage que je n'ai jamais pris le temps d'essayer la bète
Vraiment dommage...
Lien direct vers le message - Vieux
Avatar de Archamedes_Fr
Archamedes_Fr
Alpha & Oméga
 
Avatar de Archamedes_Fr
 
Tu peux encore l'installer et t'y habituer en attendant la BD.

Comme ça la transition se fera en douceur.
Lien direct vers le message - Vieux
Drazh
Dauphin
 
fiouuu felicitation tres beau boulo
j'ai voulu testé mais pourquoi le "fonct_dbbio" ne compile pas ?
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
Ba si tu as fais un copier coller. de la fonction dbbio. Je viens de voir qu'il y a eu une mauvaise interprétation en le postant car

":<img src="ubb/biggrin.gif" border="0" alt="">" cela ne devrait pas y être ^^.

Car en fait, c'est que le forum a du interprété le comme un smiley. Donc voila, il faut juste remplacer tout ça par et normalement cela devrait mieux fonctionner .

Merci pour la remarque
Lien direct vers le message - Vieux
Drazh
Dauphin
 
arf j'ai tout corrigé et remplacé le

Code PHP:
MessageServerPAORN("Erreur de La fonction SetPAORNObj:<img src="ubb/biggrin.gif" border="0" alt="">epassement des 32 caracteres du var_name"); 
par
Code PHP:
MessageServerPAORN("Erreur de La fonction SetPAORNObj::Depassement des 32 caracteres du var_name"); 
Mais à la ligne 172
Code PHP:
  ScampagnName,var_name+"O",lLoc,oOwner,oPC); 
erreur de compile.... NO SEMICOLON AFTER EXPRESSION.

PS:Dsl de demander de l'aide pour des trucs qui doivent être bien con a tes yeux :p
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
Je pense que cela doit être ca comme correction :

RetrieveCampaignObject(ScampagnName,var_name+"O",lLoc,oOwner,oPC);



Mais c'est dingue comment le forum a tronqué certaines informations.
Lien direct vers le message - Vieux
Drazh
Dauphin
 
super ca fonctionne !^^
Lien direct vers le message - Vieux
Drazh
Dauphin
 
pas.......
Lien direct vers le message - Vieux
Avatar de RAT
RAT
Alpha & Oméga
 
Avatar de RAT
 
bon laisse tomber le post a été un peu corrompu, je te l'envoie en Erf si tu veux, si tu me files ton mail par mp
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > [SCRIPT] Fonctions Database:
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 04h06.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite