По установке значения -
kennydalglish - 18.06.2015
Добрый день, у меня появился вопрос как установить значения 2 переменной?
А, точнее: например я ввожу, The Rifa это прогоняться в цикле с прверкой strcmp, мне надо установить значения 2 переменной dARifa (то есть я назначаю войну рифе)
PHP код:
enum e_Diplomation
{
e_Name[32],
e_Value
}
static const name_diplamation[][e_Diplomation] =
{
{"The Ballas", 12},
{"Los Santos Vagos", 13},
{"Grove Street", 15},
{"Varios Los Aztecas", 17},
{"The Rifa", 18}
};
PHP код:
if( PlayerInfo[playerid][p_leaders] == 12 ||
PlayerInfo[playerid][p_leaders] == 13 ||
PlayerInfo[playerid][p_leaders] == 15 ||
PlayerInfo[playerid][p_leaders] == 17 ||
PlayerInfo[playerid][p_leaders] == 18)
{
for(new interator_name_band; interator_name_band < sizeof(name_diplamation); interator_name_band ++)
{
if(strcmp(inputtext, name_diplamation[interator_name_band][e_Name], false) != 0)
continue;
new
orgazantion_name[32],
result_orgazantion,
str_[64];
format(str_, sizeof(str_), "dR%s", name_diplamation1[interator_name_band]);
Dip[0][переменная_отвечающая_за_вводимую_банду_inputtext] = 2;
result_orgazantion = GetOrganizationName(PlayerInfo[playerid][p_members], orgazantion_name, sizeof(orgazantion_name));
if(strcmp(inputtext, orgazantion_name, false) == 0)
return SendClientMessage(playerid, -1, "Нельзя объявить войну своей банде!"),
SPD(playerid, 11100, DIALOG_STYLE_LIST, "Дипломатия","[1]-Война\n[2]-Нейтрал\n[3]-Союз", "Далее", "Выход");
format(string,sizeof(string),"{228B22}[Внимание]: Ваша банда объявила войну Банде %s", name_diplamation[interator_name_band][e_Name]);
SendClientMessage(playerid, 0xFEBC41AA, string);
foreach(new i: Player)
{
if(PlayerInfo[i][p_members] != name_diplamation[interator_name_band][e_Value] || PlayerInfo[i][p_leaders] != name_diplamation[interator_name_band][e_Value])
continue;
format(string,sizeof(string),"{228B22}[Внимание]: Банда {FFFFFF}%s{228B22}объявила вам войну", result_orgazantion);
SendClientMessage(i, 0xFEBC41AA, string);
}
new string_war[45];
format(string_war, sizeof(string_war), "Вы объявили войну банде %s", name_diplamation[interator_name_band][e_Name]);
SendClientMessage(playerid, COLOR_NEWS, string_war);
SaveDip();
}
PHP код:
enum dInfo
{
dRGrove,
dRAztec,
dRVagos,
dRBallas,
//
dBGrove,
dBAztec,
dBVagos,
dBRifa,
//
dAGrove,
dAVagos,
dABallas,
dARifa,
//
dGRifa,
dGAztec,
dGVagos,
dGBallas,
//
dVGrove,
dVAztec,
dVBallas,
dVRifa,
};
new Dip[dInfo];
Если не понятно - попробую объяснить по другому
Re: По установке значения -
OKStyle - 19.06.2015
Имя переменной не получить формально, только значение.
Re: По установке значения -
kennydalglish - 20.06.2015
Может у кого то есть, идей?
Как реализовать через цикл как у меня, но что бы можно было присвоить переменной 2?
Re: По установке значения -
SoNikMells - 21.06.2015
PHP код:
enum
{
dRGrove,
dRAztec,
dRVagos,
dRBallas,
//
dBGrove,
dBAztec,
dBVagos,
dBRifa,
//
dAGrove,
dAVagos,
dABallas,
dARifa,
//
dGRifa,
dGAztec,
dGVagos,
dGBallas,
//
dVGrove,
dVAztec,
dVBallas,
dVRifa
};
new Dip[20][2][] =
{
{0, "dRGrove"},
{0, "dRAztec"},
{0, "dRVagos"},
{0, "dRBallas"},
{0, "dBGrove"},
{0, "dBAztec"},
{0, "dBVagos"},
{0, "dBRifa"},
{0, "dAGrove"},
{0, "dAVagos"},
{0, "dABallas"},
{0, "dARifa"},
{0, "dGRifa"},
{0, "dGAztec"},
{0, "dGVagos"},
{0, "dGBallas"},
{0, "dVGrove"},
{0, "dVAztec"},
{0, "dVBallas"},
{0, "dVRifa"}
};
for(new i; i != 20; i++) if(!strcmp(str_, Dip[i][1])) Dip[i][0] = 2;
// Действовать по названию переменной:
if(Dip[dAVagos][0] == 2) {}
if(Dip[dVBallas][0] == 2) {}
возможно не правильно понял, ибо сонный сижу
Re: По установке значения -
kennydalglish - 21.06.2015
C:\Óëüòðà ðï\gamemodes\new.pwn(8016) : error 046: unknown array size (variable "Dip")
PHP код:
enum
{
// Дипломатия The Rifa с бандами
d_rifa_diplomacy_with_grove,
d_rifa_diplomacy_with_aztecas,
d_rifa_diplomacy_with_vagos,
d_rifa_diplomacy_with_ballas,
// Дипломатия The Ballas с бандами
d_ballas_diplomacy_with_grove,
d_ballas_diplomacy_with_aztecas,
d_ballas_diplomacy_with_vagos,
d_ballas_diplomacy_with_rifa,
// Дипломатия Varios Los Aztecas с бандами
d_aztecas_diplomacy_with_grove,
d_aztecas_diplomacy_with_vagos,
d_aztecas_diplomacy_with_ballas,
d_aztecas_diplomacy_with_rifa,
// Дипломатия Grove Street с бандами
d_grove_diplomacy_with_rifa,
d_grove_diplomacy_with_aztecas,
d_grove_diplomacy_with_vagos,
d_grove_diplomacy_with_ballas,
// Дипломатия Los Santos Vagos с бандами
d_vagos_diplomacy_with_grove,
d_vagos_diplomacy_with_aztecas,
d_vagos_diplomacy_with_ballas,
d_vagos_diplomacy_with_rifa,
};
PHP код:
static const Dip[20][2][] =
{
{0, "d_rifa_diplomacy_with_grove"},
{0, "d_rifa_diplomacy_with_aztecas"},
{0, "d_rifa_diplomacy_with_vagos"},
{0, "d_rifa_diplomacy_with_ballas"},
{0, "d_ballas_diplomacy_with_grove"},
{0, "d_ballas_diplomacy_with_aztecas"},
{0, "d_ballas_diplomacy_with_vagos"},
{0, "d_ballas_diplomacy_with_rifa"},
{0, "d_aztecas_diplomacy_with_grove"},
{0, "d_aztecas_diplomacy_with_vagos"},
{0, "d_aztecas_diplomacy_with_ballas"},
{0, "d_aztecas_diplomacy_with_rifa"},
{0, "d_grove_diplomacy_with_rifa"},
{0, "d_grove_diplomacy_with_aztecas"},
{0, "d_grove_diplomacy_with_vagos"},
{0, "d_grove_diplomacy_with_ballas"},
{0, "d_vagos_diplomacy_with_grove"},
{0, "d_vagos_diplomacy_with_aztecas"},
{0, "d_vagos_diplomacy_with_ballas"},
{0, "d_vagos_diplomacy_with_rifa"}
};
Re: По установке значения -
OKStyle - 21.06.2015
Разве многомерный массив может быть разноформатным?
Re: По установке значения -
kennydalglish - 21.06.2015
Quote:
Originally Posted by OKStyle
Разве многомерный массив может быть разноформатным?
|
Не знаю...
Re: По установке значения -
OKStyle - 21.06.2015
тогда не 0, а "0" - как строка, а использовать в strval