Jump to content
  • 0

Problema vip


ValyYouTube

Question

Salutare am si eu  o problema la systemul de vip pe masina,am tot incercat sa il repar dar nu merge.Problmea este ca daca pun /vipname pe masina mea cu textul valy si altcineva pune pe masina lui alt text textul meu apare pe masina lui si pe masina mea nu ramane nimic, si la neon la fel

 

Aveti codul aici cine ma poate ajuta dau +1

if(dialogid == DIALOG_VEHSPAWNCAR)
 {
  if(response)
  {
   if(listitem == 0)
   {
    new i = SelectedCar[playerid],strings[256];
    new speed = MySQLCheckSpeed(PlayerInfo[playerid][pCarModel]);
    format(strings,sizeof(strings),"Vehicle Model: %d\nDistance Traveled: %.0f KM\nVehicle Age: %d days\nInsurance Price: $%s\nInsurance Points: %d\nTop speed: %d km/h",PlayerInfo[playerid][pCarModel],PlayerInfo[playerid][pCarKM],PlayerInfo[playerid][pCarDays],FormatNumber(PlayerInfo[playerid][pCarInsPrice]),PlayerInfo[playerid][pCarIns],speed);
    ShowPlayerDialog(playerid,DIALOG_VEHINFO,DIALOG_STYLE_MSGBOX,"Vehicle Info",strings,"Close","");
   }
   if(listitem == 1)
   {
    new i = SelectedCar[playerid],engine,lights,alarm,doors,bonnet,boot,objective;
    if(IsTrailerAttachedToVehicle(PlayerInfo[playerid][pCarID])) return SendClientMessage(playerid, COLOR_WHITE, "{FFB870}On a mission right now, can't use this command.");
    if(!CarTow(PlayerInfo[playerid][pCarID]) && PlayerInfo[playerid][pCarID] != 0) return SendClientMessage(playerid, COLOR_GREY, "The car is in use and it can't be towed.");
    //========================================================================
    if(PlayerInfo[playerid][pCarID] != 0) DestroyVehicle(PlayerInfo[playerid][pCarID]);
    PlayerInfo[playerid][pCarID] = CreateVehicle(PlayerInfo[playerid][pCarModel],PlayerInfo[playerid][pCarLocX],PlayerInfo[playerid][pCarLocY],PlayerInfo[playerid][pCarLocZ],PlayerInfo[playerid][pCarAngle],PlayerInfo[playerid][pCarColor1],PlayerInfo[playerid][pCarColor2],-1);
    SetVehicleNumberPlate(PlayerInfo[playerid][pCarID], CarPlate[playerid]);
    SetVehicleHealth(PlayerInfo[playerid][pCarID], PlayerInfo[playerid][pCarHP]);

    UpdateVehicleDamageStatus(PlayerInfo[playerid][pCarID], PlayerInfo[playerid][pCarDamage1], PlayerInfo[playerid][pCarDamage2], PlayerInfo[playerid][pCarDamage3], PlayerInfo[playerid][pCarDamage4]);
    Gas[PlayerInfo[playerid][pCarID]] = PlayerInfo[playerid][pCarGas];
 

    if(PlayerInfo[playerid][pCarLock] == 0)
    {
     GetVehicleParamsEx(PlayerInfo[playerid][pCarID],engine,lights,alarm,doors,bonnet,boot,objective);
        SetVehicleParamsEx(PlayerInfo[playerid][pCarID],VEHICLE_PARAMS_OFF,lights,alarm,0,bonnet,boot,objective);
    }
    else
    {
     GetVehicleParamsEx(PlayerInfo[playerid][pCarID],engine,lights,alarm,doors,bonnet,boot,objective);
        SetVehicleParamsEx(PlayerInfo[playerid][pCarID],VEHICLE_PARAMS_OFF,lights,alarm,1,bonnet,boot,objective);
    }
    for(new d; d < 17; d++)
    {
     if(CarMod[playerid][d] != 0) AddVehicleComponent(PlayerInfo[playerid][pCarID],CarMod[playerid][d]);
    }
    ChangeVehiclePaintjob(PlayerInfo[playerid][pCarID], PlayerInfo[playerid][pCarPaintJ]);
    vehEngine[PlayerInfo[playerid][pCarID]] = 0;
    SendClientMessage(playerid, COLOR_GREY, "Your car has been respawned.");
    
    if(!strmatch(carvip[playerid],"NO"))
    {
        if(ValidNeonCar1(PlayerInfo[playerid][pCarModel][vehicleid]))
                    {
                 if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
              vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
              SetDynamicObjectMaterialText(vText[vehicleid], 0, carvip[playerid], 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
              AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.000000, -1.634998, 0.394999, -78.364997, 0.000000, 0.000000);
                    }
                    if(ValidTuningCar1(PlayerInfo[playerid][pCarModel][vehicleid]))
                    {
                 if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
              vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
              SetDynamicObjectMaterialText(vText[vehicleid], 0, carvip[playerid], 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
              AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.000000, 2.115000, 0.294999, -104.519912, -177.885086, 0.000000);
                    }
                    if(Infernus1(PlayerInfo[playerid][pCarModel][vehicleid]))
                    {
                 if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
              vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
              SetDynamicObjectMaterialText(vText[vehicleid], 0, carvip[playerid], 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
              AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.0,-1.9, 0.3, 270.0, 0.0, 0.0);
                    }
    }
    if(PlayerInfo[playerid][pNeon] != 0)
                {
                      if(IsValidDynamicObject(Neon1[PlayerInfo[playerid][pCarID]])) DestroyDynamicObject(Neon1[PlayerInfo[playerid][pCarID]]);
       if(IsValidDynamicObject(Neon2[PlayerInfo[playerid][pCarID]]))DestroyDynamicObject(Neon2[PlayerInfo[playerid][pCarID]]);
       if(PlayerInfo[playerid][pNeon] == 1)
               Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18648,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18648,0,0,0,0,0,0);
                   else   if(PlayerInfo[playerid][pNeon] == 2)
      Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18647,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18647,0,0,0,0,0,0);
                   else   if(PlayerInfo[playerid][pNeon] == 3)
               Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18649,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18649,0,0,0,0,0,0);
                   else   if(PlayerInfo[playerid][pNeon] == 4)
              Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18652,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateObject(18652,0,0,0,0,0,0);
                   else   if(PlayerInfo[playerid][pNeon] == 5)
              Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18651,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18651,0,0,0,0,0,0);
                   else   if(PlayerInfo[playerid][pNeon] == 6)
            Neon1[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18650,0,0,0,0,0,0),
                     Neon2[PlayerInfo[playerid][pCarID]] = CreateDynamicObject(18650,0,0,0,0,0,0);
       else return 1;
                      AttachDynamicObjectToVehicle(Neon1[PlayerInfo[playerid][pCarID]], PlayerInfo[playerid][pCarID], -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                      AttachDynamicObjectToVehicle(Neon2[PlayerInfo[playerid][pCarID]], PlayerInfo[playerid][pCarID], 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                }
   }
   if(listitem == 2)
   {
    new i = SelectedCar[playerid];
    if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, COLOR_WHITE, "{FFF8C6}On a mission right now, can't use this command.");
    if(BusinessRob[playerid] > 0) return SendClientMessage(playerid,COLOR_WHITE,"You can't use this while robbing the bank.");
       if(CP[playerid] < 1 && !IsATruck(GetPlayerVehicleID(playerid)) && CheckBus[playerid] < 1 && GotoMats[playerid] < 1)
    {
     if(PlayerInfo[playerid][pCarID] != 0)
     {
      LocateCar(PlayerInfo[playerid][pCarID],playerid);
     }
     else return SendClientMessage(playerid, COLOR_WHITE, "This vehicle is not spawned.");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_JOBULETES, DIALOG_STYLE_MSGBOX, "Anulare Checkpoint", "Esti sigur ca vrei sa anulezi checkpoint-ul curent?", "Da", "Nu");
    }
   }
   if(listitem == 3)
   {
    new i = SelectedCar[playerid];
    new inscarpricee = PlayerInfo[playerid][pCarInsPrice],stringul[200];
       if(PlayerInfo[playerid][pCarIns] < 5)
       {
           if(GetPlayerCash(playerid) >= inscarpricee)
          {
              format(stringul,sizeof(stringul),"You want to buy 1 insurance for $%d?",inscarpricee);
              ShowPlayerDialog(playerid, DIALOG_INSURANCEBUY, DIALOG_STYLE_MSGBOX, "Insurance", stringul, "Yes", "No");
     }
    }
    else
    {
         ShowPlayerDialog(playerid, DIALOG_INSURANCEBUY2, DIALOG_STYLE_MSGBOX, "Insurance", "You can't have more than 5 insurance", "OK", "");
    }
   }
   if(listitem == 4)
   {
    if(PlayerInfo[playerid][pPremiumPoints] <= 19)
    {
        ShowPlayerDialog(playerid, DIALOG_NOPP, DIALOG_STYLE_MSGBOX, "Not enough points", "You don't have enough Premium Points to do this.", "Close", "");
        return 1;
    }
    new strings[200],name[30],stringss[200],str1[300],i = SelectedCar[playerid];
    PlayerInfo[playerid][pPremiumPoints] -= 20;
    PlayerInfo[playerid][pCarDays] = 0;
    PlayerInfo[playerid][pCarKM] = 0.0;
    PlayerInfo[playerid][pCarKMLast] = 0;
    cUpdate(playerid, i, cDaysx);
    cUpdate(playerid, i, cKMx);
    SendClientMessage(playerid, COLOR_YELLOW, "You have cleared your car KM and Days! (-20 Premium Points)");
    GetPlayerName(playerid, name, sizeof(name));
    format(strings, sizeof(strings), "/shop: %s bought clear car KM and Days.",name);
    ABroadCast(COLOR_YELLOW,strings,6);
    mysql_real_escape_string(strings, stringss);
    mysql_format(SQL,str1,sizeof(str1), "INSERT INTO `shop_logs` (`playerid`,`Message`) VALUES('%d','%s')",PlayerInfo[playerid][pSQLID],stringss);
    mysql_tquery(SQL,str1,"","");
   }
   if(listitem == 5)
   {
    new i = SelectedCar[playerid];
    if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, COLOR_WHITE, "{FFF8C6}On a mission right now, can't use this command.");
    if(BusinessRob[playerid] > 0) return SendClientMessage(playerid,COLOR_WHITE,"You can't use this while robbing the bank.");
       if(CP[playerid] < 1 && !IsATruck(GetPlayerVehicleID(playerid)) && CheckBus[playerid] < 1 && GotoMats[playerid] < 1)
    {
     if(PlayerInfo[playerid][pCarID] != 0)
     {
      if(PlayerInfo[playerid][pLanguage] == 1) ShowPlayerDialog(playerid, DIALOG_UNSTUCK, DIALOG_STYLE_MSGBOX, "Unstuck car", "This option was created for those who can't find the car using /findcar.\nUsing this option your car will be spawned in a parking lot in LV.\n\nAre you sure you want to do this?", "Yes", "No");
      else if(PlayerInfo[playerid][pLanguage] == 2) ShowPlayerDialog(playerid, DIALOG_UNSTUCK, DIALOG_STYLE_MSGBOX, "Unstuck car", "Aceasta optiune a fost creata pentru cei care nu-si pot gasi masina folosind /findcar.\nFolosind aceasta optiune vei avea masina spawnata intr-o parcare din LV.\n\nEsti sigur ca vrei sa faci asta?", "Da", "Nu");
     }
     else return SendClientMessage(playerid, COLOR_WHITE, "This vehicle is not spawned.");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_JOBULETES, DIALOG_STYLE_MSGBOX, "Anulare Checkpoint", "Esti sigur ca vrei sa anulezi checkpoint-ul curent?", "Da", "Nu");
    }
   }
   if(listitem == 6)
   {
    if(PlayerInfo[playerid][pPremiumPoints] < 150)
    {
        ShowPlayerDialog(playerid, DIALOG_NOPP, DIALOG_STYLE_MSGBOX, "Not enough points", "You don't have enough premium points to do this.", "Close", "");
        return 1;
    }
    new i = SelectedCar[playerid];
    if(!ValidCar(PlayerInfo[playerid][pCarModel])) return SCM(playerid,-1,"Nu poti upgrada acest tip de vehicul!");
             if(PlayerInfo[playerid][pUpgrade]!=0) return SCM(playerid,-1,"Your car is already upgraded!");
    PlayerInfo[playerid][pUpgrade] = 1;
            cUpdate(playerid, i, pUpgradex);
            SCM(playerid,COLOR_LIGHTBLUE," ");
            SCM(playerid,COLOR_LIGHTBLUE,"Your car has been upgraded to VIP, now you can use /vipname and /vipneon");
             PlayerInfo[playerid][pPremiumPoints] -=150;
    Update(playerid, pPremiumPointsx);
      }
  }
 }
 
 
//===============COMENZIILE
CMD:vipname(playerid, params[])
{
 new text[256], szMessage[256];
 new vehicleid = GetPlayerVehicleID(playerid);
 new idcar = -1;
 for(new vv; vv < PlayerInfo[playerid][pCarSlots]; vv++)
 {
  if(vehicleid == PlayerInfo[playerid][pCarID][vv])
  {
   idcar = vv;
  }
 }
 if(idcar == -1) return SendClientMessage(playerid, COLOR_WHITE, "You are not in your car.");
 if(PlayerInfo[playerid][pUpgrade][idcar]==0) return SCM(playerid,-1,"You didn't upgraded your car to vip!");
 if(sscanf(params, "s[30]", text)) return SCM(playerid, COLOR_WHITE, "SYNTAX: /vipname [name]");
 if(PinLogged[playerid] == 0) return SCM(playerid, COLOR_LIGHTRED,"Trebuie sa  introduci pin-ul mai intai.(/pin)sau sa iti setezi un pin /setpin");
 if(PlayerInfo[playerid][pAdmin] >= 0)
 {
     if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER && GetPlayerState(playerid) != PLAYER_STATE_PASSENGER) return SCM(playerid, COLOR_WHITE, "Nu esti intr-un vehicul.");
     if(IsAnOwnableCar(vehicleid))
     {
   if(ValidNeonCar1(vehicleid))
   {
         if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
      vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
      SetDynamicObjectMaterialText(vText[vehicleid], 0, text, 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
      AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.000000, -1.634998, 0.394999, -78.364997, 0.000000, 0.000000);
      format(szMessage, sizeof(szMessage), "{F2CF09}Text pentru vehicul setat: '%s'", text);
      SCM(playerid, COLOR_YELLOW, szMessage);
      format(carvip[playerid][idcar],30,"%s",text);
      cUpdate(playerid, idcar, cVipx);
            }
            if(ValidTuningCar1(vehicleid))
   {
         if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
      vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
       SetDynamicObjectMaterialText(vText[vehicleid], 0, text, 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
      AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.000000, 2.115000, 0.294999, -104.519912, -177.885086, 0.000000);
      format(szMessage, sizeof(szMessage), "{F2CF09}Text pentru vehicul setat: '%s'", text);
      SCM(playerid, COLOR_YELLOW, szMessage);
      format(carvip[playerid][idcar],30,"%s",text);
      cUpdate(playerid, idcar, cVipx);
            }
            if(Infernus1(vehicleid))
            {
         if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
      vText[vehicleid] = CreateDynamicObject(19327, -2597.0762, -2638.4270, -5.3536, -87.6999, 90.4001, -87.1805);
       SetDynamicObjectMaterialText(vText[vehicleid], 0, text, 50, "Arial", 25, 1, 0xFFFFFFFF, 0, 1);
      AttachDynamicObjectToVehicle(vText[vehicleid], vehicleid, 0.0,-1.9, 0.3, 270.0, 0.0, 0.0);
      format(szMessage, sizeof(szMessage), "{F2CF09}Text pentru vehicul setat: '%s'", text);
      SCM(playerid, COLOR_YELLOW, szMessage);
      format(carvip[playerid][idcar],30,"%s",text);
      cUpdate(playerid, idcar, cVipx);
            }
  }
 }
 return 1;
}
CMD:removename(playerid, params[])
{
 new szMessage[256];
 new vehicleid = GetPlayerVehicleID(playerid);
 new idcar = -1;
 for(new vv; vv < PlayerInfo[playerid][pCarSlots]; vv++)
 {
  if(vehicleid == PlayerInfo[playerid][pCarID][vv])
  {
   idcar = vv;
  }
 }
 if(idcar == -1) return SendClientMessage(playerid, COLOR_WHITE, "You are not in your car.");
    if(PinLogged[playerid] == 0) return SCM(playerid, COLOR_LIGHTRED,"Trebuie sa  introduci pin-ul mai intai.(/pin)sau sa iti setezi un pin /setpin");
    if(PlayerInfo[playerid][pAdmin] >= 0)
    {
        if(IsValidDynamicObject(vText[vehicleid])) DestroyDynamicObject(vText[vehicleid]);
  format(carvip[playerid][idcar],30,"NO");
  cUpdate(playerid, idcar, cVipx);
        format(szMessage, sizeof(szMessage), "{F2CF09}Text-ul setat pe masina a fost sters cu succes.");
  SCM(playerid, COLOR_RED, szMessage);
    }
    return 1;
}
CMD:vipneon(playerid, params[])
{
 if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "Trebuie sa te loghezi  mai intai.");
 if(PinLogged[playerid] == 0) return SCM(playerid, COLOR_LIGHTRED,"Trebuie sa  introduci pin-ul mai intai.(/pin)sau sa iti setezi un pin /setpin");
 if(PlayerInfo[playerid][pVip] < 1) return SendClientMessage(playerid, COLOR_ERROR, AdminOnly);
 if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_WHITE,"You are not in your car.");
 new VehI = GetPlayerVehicleID(playerid),idcar=-1;
    new getcarid = GetPlayerVehicleID(playerid);
 for(new vv; vv < PlayerInfo[playerid][pCarSlots]; vv++)
 {
  if(VehI == PlayerInfo[playerid][pCarID][vv])
  {
   idcar = vv;
  }
 }
 if(idcar == -1) return SendClientMessage(playerid, COLOR_WHITE, "You are not in your car.");
 if(PlayerInfo[playerid][pUpgrade][idcar]==0) return SCM(playerid,-1,"You didn't upgraded your car to vip!");
 if(getcarid == PlayerInfo[playerid][pCarID][idcar] && ValidNeonCar1(getcarid) || PlayerInfo[playerid][pCarID][idcar] && ValidTuningCar1(getcarid) || PlayerInfo[playerid][pCarID][idcar] && Infernus1(getcarid))
 {
        new titlestring[MAX_STRING],string1[MAX_STRING],string2[MAX_STRING],string3[MAX_STRING],string4[MAX_STRING],iString[1500];
     format(titlestring, sizeof(titlestring), "Neon Shop");
     format(string1, sizeof(string1), "{0049FF}Blue(Albastru)- 100.000$\n{FF0000}Red(Rosu)- 100.000$");
     format(string2, sizeof(string2), "{66CC00}Green(Verde) - 100.000$\n{FFFFFF}White(Alb) - 100.000$");
     format(string3, sizeof(string3), "{9966FF}Pink(Mov) - 100.000$\n{FFFF00}Yellow(Galben) - 100.000$");
     format(string4, sizeof(string4), "{FFFFFF}Remove neon(Sterge Neon)");
     format(iString, sizeof(iString), "%s\n%s\n%s\n%s\n%s\n%s", string1, string2, string3, string4);
      ShowPlayerDialog(playerid,DIALOG_NEON,DIALOG_STYLE_LIST, titlestring, iString, "Buy","Exit");
     PlayerPlaySound(playerid, 1133, 0.0, 0.0, 10.0);
 }
 else return SendClientMessage(playerid, COLOR_WHITE, "{FFB870}You are not in your vehicle or this model is invalid");
 return 1;
}
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

la primul dialog ai asta

  new i = SelectedCar[playerid]

ei bine tu mai departe ai peste tot PlayerInfo[playerid][pCarID]  iar aceasta este o matrice, tu ai nevoie de un tablou tridimensional adica trebuie sa mai adaugi [integer]  deci vei inlocui peste tot 

PlayerInfo[playerid][pCarID]

cu

PlayerInfo[playerid][pCarID]

pentru ca tu ai nevoie de i este variabila SelectedCar[playerid]

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.