Multi-Language Dialog Problem
#1

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.
Reply
#2

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;
}
Reply
#3

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..
Reply
#4

Код:
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;
}
Reply
#5

Works fine but this command doesnt work:
http://pastebin.com/bqKiYmAy

Line 15 is wrong
Reply
#6

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;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)