[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
[FAQ] Магазин одежды
Дата: 10.08.2011, Среда, 00:30:39 | Сообщение # $NUMBER
Группа: VIP
Сообщений: 1021
Репутация: 815+
Описание: Вообщем это отличный магазин с одеждой. В котором вы можете купить любой понравившийся вам скин.

1.Добавляем ко всем new:
Code
new Menu:BuyClothes;//Переменная для записи ида меню.  
new SkinMen[7][2] ={//Мужские скины  
{15,1000},  
{66,1000},  
{143,1000},  
{50,1000},  
{24,5000},  
{23,50000},  
{29,350000}  
};  
new SkinMale[5][2] ={//Женские скины  
{12,1000},  
{93,5000},  
{192,100000},  
{233,100000},  
{216,2000000}  
};  
new ChangeSkin[MAX_PLAYERS];//Переменная для смены скинa


2.Вставляем в Public OnGameModeInit

Code
BuyClothes = CreateMenu ( "Clothes", 1, 10.0, 130.0, 100.0, 80.0);//Создаём меню  
AddMenuItem(BuyClothes, 0, "Next>>");//"Кнопка" Далее  
AddMenuItem(BuyClothes, 0, "<<Previous");//"Кнопка" Назад  
AddMenuItem(BuyClothes, 0, "Done");//"Кнопка" Выбор  
AddMenuItem(BuyClothes, 0, "Exit");//"Кнопка" Отмена


3. Вставляем в public OnPlayerSelectedMenuRow(playerid, row)

Code
if(current == BuyClothes)//Если меню игрока buyclothes то..  
{  
switch(row)//Переключаем "кнопки"  
{  
case 0://Если он нажал на "кнопку" NExt to  
{  
if(PlayerInfo[playerid][pSex] == 1)//Если игрока мужик то..  
{  
ChangeSkin[playerid]++;//Увелчиваем переменную..  
if(ChangeSkin[playerid] >= 6)//Если переменная равна ил более 6 то..  
{  
ChangeSkin[playerid] = 0;//Обнуляем её.. т.е. переходим к скину 0(Не CJ А каторый в Масиве SkinMen самый первый)  
}  
SetPlayerSkin(playerid,SkinMen[ChangeSkin[playerid]][0]);//Меняем игроку скин на тот каторый он выбрал  
format(string,sizeof(string),"%d$",SkinMen[ChangeSkin[playerid]][1]);//Показываем ему стоимость скина  
GameTextForPlayer(playerid,string,9999,1);  
}  
else// Или если игрок женщина  
{  
ChangeSkin[playerid]++;//велчиваем переменную  
if(ChangeSkin[playerid] >= 5)//Если переменная равна или более 5 то  
{  
ChangeSkin[playerid] = 0;//Обнуляем её т.е. переходим к скину 0(Не CJ А каторый в Масиве SkinMale самый первый)  
}  
SetPlayerSkin(playerid,SkinMale[ChangeSkin[playerid]][0]);//Меняем её скин  
format(string,sizeof(string),"%d$",SkinMale[ChangeSkin[playerid]][1]);//Показываем стоимость скина  
GameTextForPlayer(playerid,string,9999,1);  
}  
ShowMenuForPlayer(BuyClothes, playerid);//Показываем меню, т.к. после нажатия на любую кнопку оно исчезает  
}  
case 1://Если нажал на кнопку Назад  
{  
if(PlayerInfo[playerid][pSex] == 1)//Если он мужик  
{  
ChangeSkin[playerid]--;//Уменьшаем переменную  
if(ChangeSkin[playerid] <= 0)//Если пересменная меньше или равна 0 то  
{  
ChangeSkin[playerid] = 6;//Даём ей значение 6 переходим к самому последнему скину в масиве SkinMale  
}  
SetPlayerSkin(playerid,SkinMen[ChangeSkin[playerid]][0]);//Меняем скин  
format(string,sizeof(string),"%d$",SkinMen[ChangeSkin[playerid]][1]);//Показываем стоимость  
GameTextForPlayer(playerid,string,9999,1);  
}  
else//Если она женщина  
{  
ChangeSkin[playerid]--;//Уменьшаем переменную  
if(ChangeSkin[playerid] <= 0)//Если переменная равна или меньше 0 то  
{  
ChangeSkin[playerid] = 5;// Ставим значение 5 и переходим к последниму скину в масиве SkinMale  
}  
SetPlayerSkin(playerid,SkinMale[ChangeFirstSkin[playerid]][0]);//Меняем скин  
format(string,sizeof(string),"%d$",SkinMale[ChangeSkin[playerid]][1]);//Показываем стоимость  
GameTextForPlayer(playerid,string,9999,1);  
}  
ShowMenuForPlayer(BuyClothes, playerid);//Показываем меню, зачем я уже говарил выше  
}  
case 2://Если игрока нажал на "кнопку" Даллее  
{  
new cost;//Создадим переменную..  
cost = SkinMen[ChangeSkin[playerid]][1];//Приравниваем переменную к цене скина в масиве Цыфра 1 - второй столбик масива  
new cena;//Создаём ещё одну переменную..  
cena = SkinMen[ChangeSkin[playerid]][1];//Приравниваем переменную к цене скина в масиве Цыфра 1 - второй столбик масива  
if(PlayerInfo[playerid][pSex] == 1)//Если он мужик то  
{  
if(GetPlayerMoney(playerid) >= cost)//Если у него денег больше и равно цене скина то  
{  
PlayerInfo[playerid][pChar] = GetPlayerSkin(playerid);//Узнаём его скин и записываем в акаунт  
SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);//Меняем ему скин на тот каторый он купил  
TogglePlayerControllable(playerid, 1);//Размораживаем его  
SetCameraBehindPlayer(playerid);//Ставим нормально камеру(чтоб он не багал хз где а ккамера осталась в магазине)  
SetPlayerPos(playerid,221.7944,-8.4229,1002.2109);//Меняем позицию  
SetPlayerFacingAngle(playerid,273.5792);//Меняем поворот головы  
SetPlayerInterior(playerid,5);//Даём 5 интерьер  
GivePlayerMoney(playerid,-cost);//Забираем деньги за скин  
}  
else//Если нету денег то  
{  
SendClientMessage(playerid,COLOR_GREY,"У вас не достатачн денег");//Пишем сообщение  
ShowMenuForPlayer(BuyClothes, playerid);//Показываем меню..  
}  
}  
else//Если она женщина то  
{  
if(GetPlayerMoney(playerid) >= cena)//Если у неё денег больше или равно цене скину в масиве то  
{  
PlayerInfo[playerid][pChar] = GetPlayerSkin(playerid);//УЗнаём её скин и записваем в акаунт  
SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);//Меняем ей скин каторый она купила  
TogglePlayerControllable(playerid, 1);//Размораживаем  
SetCameraBehindPlayer(playerid);//Ставим камеру нормально  
SetPlayerPos(playerid,221.7944,-8.4229,1002.2109);//Меняем позицию  
SetPlayerFacingAngle(playerid,273.5792);//Меняем поворт головы  
SetPlayerInterior(playerid,5);//Даём 5 интерьер  
GivePlayerMoney(playerid,-cost);//Забираем деньги за скин  
}  
else//Если у неё меньше денег то  
{  
SendClientMessage(playerid,COLOR_GREY,"У вас не достатачн денег");//Машем сообщение  
ShowMenuForPlayer(BuyClothes, playerid);//Паказываем меню  
}  
}  

}  
case 3://Если игрок нажал на "кнопку" Exit  
{  
SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);//Меняем на скин каторый у игрока был  
TogglePlayerControllable(playerid, 1);//Размораживаем  
SetPlayerPos(playerid,221.7944,-8.4229,1002.2109);//Меняем позицию  
SetPlayerFacingAngle(playerid,273.5792);//Меняем поворот головы  
SetPlayerInterior(playerid,5);//Даём 5 интерьер  
SetCameraBehindPlayer(playerid);//Делаем норм камеру  
}  
}  
}  


4. Добавляем команду на сервер:

Code
if(strcmp(cmd, "/команда", true) == 0)  
{  
if(gPlayerLogged[playerid] != 0)//Если игрок залогинен  
{  
if(PlayerToPoint(5.0,playerid,X,Y,Z))//Если игрок находится в превельных координатах(Коорджината ставим свои!)  
{  
if(PlayerInfo[playerid][pLeader]==0 && PlayerInfo[playerid][pMember] == 0)//Если игрок не состоит во фракции и не лидер  
{  
ShowMenuForPlayer(BuyClothes, playerid);//Показываем ему меню..  
new rand = random(sizeof(gInviteSpawns));//Создаём переменню рандум и приравниваем её  
SetPlayerPos(playerid, 222.3489,-8.5845,1002.2109); //меняем позицию  
SetPlayerFacingAngle(playerid, 266.7302);//Меняем поворто головы  
SetPlayerCameraPos(playerid,222.3489 + 3, -8.5845, 1002.2109);//Меняем позицию камеры, чтобы она сметрела прямо на игрока  
SetPlayerCameraLookAt(playerid,222.3489, -8.5845, 1002.2109);//Устанавлием направление камеры  
TogglePlayerControllable(playerid, 0);//Замораживаем, чтоы не ходил туда сюда (IMG:http://forum.base-games.ru/style_emoticons/default/biggrin.gif)  
ChangeSkin[playerid]=0;//Обнуляем переменную.  
}  
}  
}  
return 1;  
}  
Дата: 10.08.2011, Среда, 09:59:00 | Сообщение # $NUMBER
Группа: Модераторы
Сообщений: 1045
Репутация: 1112+
Tailer, баян CRAZY
Дата: 10.08.2011, Среда, 11:23:22 | Сообщение # $NUMBER
Группа: VIP
Сообщений: 1021
Репутация: 815+
Ryder_Wilson, Это ты баян. Ася :D
Дата: 10.08.2011, Среда, 12:40:53 | Сообщение # $NUMBER
Группа: Модераторы
Сообщений: 1045
Репутация: 1112+
Tailer, гавно а не урок. :(

_________________________----
Отредактировал Tailer(мат)

ГДЕ ТЫ ВИДИШЬ МАТ?

_______________
отредактировал Ryder_Wilson
  • Страница 1 из 1
  • 1
Поиск: