Multi-Language Dialog Problem -
XxerykxX - 31.05.2010
Hello. I have a problem.
This is my command for teleport:
Код:
if (strcmp(cmdtext, "/dust", true) == 0)
{
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
SetVehiclePos(GetPlayerVehicleID(playerid), -314.7742, 1515.2451, 75.0225);
SetVehicleZAngle(GetPlayerVehicleID(playerid), 0.4131);
SendClientMessage(playerid, COLOR_GREEN,"Witaj na Dust.");
}
else
{
SetPlayerPos(playerid, -314.7742, 1515.2451, 75.0225);
SetPlayerFacingAngle(playerid, 0.4131);
SendClientMessage(playerid, COLOR_GREEN,"Witaj na Dust.");
}
SetCameraBehindPlayer(playerid);
return 1;
}
How can i make it works with 2 Languages? and using this:
Код:
if(Polish[playerid] == 1)
if(English[playerid] == 1)
And this is in Polish:
Код:
SendClientMessage(playerid, COLOR_GREEN,"Witaj na Dust.");
English:
Код:
SendClientMessage(playerid, COLOR_GREEN,"Welcome on Dust.");
How can you make it? I already have a script just would like to know how to do teleport.
Re: Multi-Language Dialog Problem -
Jefff - 31.05.2010
Use 1 array for this
Код:
#define POLISH 1
#define ENGLISH 2
new Language[MAX_PLAYERS];
if(strcmp(cmdtext, "/dust", true) == 0)
{
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
SetVehiclePos(GetPlayerVehicleID(playerid), -314.7742, 1515.2451, 75.0225);
SetVehicleZAngle(GetPlayerVehicleID(playerid), 0.4131);
}
else
{
SetPlayerPos(playerid, -314.7742, 1515.2451, 75.0225);
SetPlayerFacingAngle(playerid, 0.4131);
}
if(Language[playerid] == POLISH)
SendClientMessage(playerid, COLOR_GREEN,"Witaj na Dust.");
else
SendClientMessage(playerid, COLOR_GREEN,"Welcome on Dust.");
SetCameraBehindPlayer(playerid);
return 1;
}
Re: Multi-Language Dialog Problem -
XxerykxX - 31.05.2010
It doesnt work for me. Thats my script:
Top of script:
Код:
new English[MAX_PLAYERS];
new Polish[MAX_PLAYERS];
Under onplayerspawn
Код:
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, "LANGUAGE", "Choose a Language", "English", "Polish");
My dialogrespone meyby its wrong:
Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1100)
{
if(listitem == 0)
{
AddVehicleComponent(GetPlayerVehicleID(playerid), 1097);
}
if(listitem == 1)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1098);
}
if(listitem == 2)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1096);
}
if(listitem == 3)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1085);
}
if(listitem == 4)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1084);
}
if(listitem == 5)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1083);
}
if(listitem == 6)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1082);
}
if(listitem == 7)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1081);
}
if(listitem == 8)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1080);
}
if(listitem == 9)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1079);
}
if(listitem == 10)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1078);
}
if(listitem == 11)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1077);
}
if(listitem == 12)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1076);
}
if(listitem == 13)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1075);
}
if(listitem == 14)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1074);
}
if(listitem == 15)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1073);
}
if(listitem == 16)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1025);
}
return 1;
}
if(dialogid == 2)
{
if(response)
{
English[playerid] = 1;
Polish[playerid] = 0;
SendClientMessage(playerid, 0xFFFFFFFF, "You have choosed English.");
}
else
{
English[playerid] = 0;
Polish[playerid] = 1;
SendClientMessage(playerid, 0xFFFFFFFF, "Wybrałeś język Polski"); //Translate if you want...
}
return 1;
}
return 0;
}
And then your script you gave me. When i pick Polish or English it says in English..
Re: Multi-Language Dialog Problem -
Jefff - 01.06.2010
Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1100)
{
if(listitem == 0)
{
AddVehicleComponent(GetPlayerVehicleID(playerid), 1097);
}
if(listitem == 1)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1098);
}
if(listitem == 2)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1096);
}
if(listitem == 3)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1085);
}
if(listitem == 4)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1084);
}
if(listitem == 5)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1083);
}
if(listitem == 6)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1082);
}
if(listitem == 7)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1081);
}
if(listitem == 8)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1080);
}
if(listitem == 9)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1079);
}
if(listitem == 10)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1078);
}
if(listitem == 11)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1077);
}
if(listitem == 12)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1076);
}
if(listitem == 13)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1075);
}
if(listitem == 14)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1074);
}
if(listitem == 15)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1073);
}
if(listitem == 16)
{
AddVehicleComponent(GetPlayerVehicleID(playerid),1025);
}
return 1;
}
if(dialogid == 2)
{
if(response)
{
Language[playerid] = ENGLISH;
SendClientMessage(playerid, 0xFFFFFFFF, "You have choosed English.");
}
else
{
Language[playerid] = POLISH;
SendClientMessage(playerid, 0xFFFFFFFF, "Wybrałeś język Polski"); //Translate if you want...
}
return 1;
}
return 0;
}
Re: Multi-Language Dialog Problem -
XxerykxX - 01.06.2010
Works fine but this command doesnt work:
http://pastebin.com/bqKiYmAy
Line 15 is wrong
Re: Multi-Language Dialog Problem -
Jefff - 01.06.2010
Brackets if u have 1 line like this u dont need brackets
Код:
if(Language[playerid] == POLISH)
SendClientMessage(playerid,COLOR_GREEN,"Twoja pozycja została zapisana.");
else
SendClientMessage(playerid,COLOR_GREEN,"Your position got saved.");
but more u need
Код:
else if(strcmp(cmd, "/loadpos", true) == 0) {
if(LocX == 0.0 && LocY == 0.0 && LocZ == 0.0) {
if(Language[playerid] == POLISH) {
SendClientMessage(playerid,COLOR_RED,"Żeby teleportować się do wybranej przez ciebie pozycji,");
SendClientMessage(playerid,COLOR_RED,"musisz ją najpierw zapisać komendą /savepos.");
}else{
SendClientMessage(playerid,COLOR_RED,"If you want to teleport to your saved position,");
SendClientMessage(playerid,COLOR_RED,"you have to save it first by using /savepos.");
}
} else {
if(IsPlayerInAnyVehicle(playerid)) {
new VehicleID;
VehicleID = GetPlayerVehicleID(playerid);
SetVehiclePos(VehicleID, LocX, LocY, LocZ);
SetPlayerFacingAngle(playerid,Ang);
} else {
SetPlayerPos(playerid,LocX, LocY, LocZ);
SetPlayerFacingAngle(playerid,Ang);
}
if(Language[playerid] == POLISH)
SendClientMessage(playerid,COLOR_GREEN,"Teleportowałeś się do twojego zapisanego miejsca.");
else
SendClientMessage(playerid,COLOR_GREEN,"You got teleported to your saved position.");
}
return 1;
}