Сайт восстановлен из веб архива. Сейчас он доступен только для чтения, скачивание материалов также недоступно. Если у вас до сих пор есть какие-то вопросы по разработке серверов CRMP, вы можете перейти на актуальный портал: https://pawno-rus.com

Перейти к содержимому

Уважаемый гость, если у Вас возникли проблемы с регистрацией, просьба обратиться в тех.поддержку или на почту admin@pawno-crmp.ru

Для полного доступа ко всем функциям форума, Вам необходимо зарегистрироваться и авторизоваться.

Фотография

Как сделать простенькие скрипт на игру в кости?(Казино)


Лучший Ответ Elrmrnt-Kritik , 25 Июнь 2016 - 17:30

В общем сделал, но смотри... Я-то не профессионал, так что код на слабом уровне сделал. Для солидности сделал все же сделал подтверждение желания играть на диалога (DIALOG_STYLE_MSGBOX). Проверку на нахождение в интерьерах если нужно делаешь сам, я лишь сделал ограничение зоны (в какой зоне можно использовать данную команду, если что добавишь еще координаты). Также, по-хорошему, стоит добавить проверку на наличие у игрока костей, которые покупаются в том же 24/7, но не знаю какие у вас переменные... Делайте сами.

 

Непосредственно код в OnPlayerCommandText

 
	if(strcmp(cmd, "/кости",true) == 0)
	{
		if(IsPlayerConnected(playerid))//Проверяем находится ли игрок авторизированным на сервере
		{
		    if(PlayerToPoint(10.0, playerid, 2528.2769,-2132.0132,21.9640))//Координаты, в радиусе 10 метров от которой работает данная команда
		    {
		    	tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))return SendClientMessage(playerid, 0xFFFFFFFF, "Введите: /кости [id]");
				giveplayerid = ReturnUser(tmp);
				GetPlayerName(playerid, sendername, sizeof(sendername));
				GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
				if(playerid != giveplayerid)
				{
					if(IsPlayerConnected(giveplayerid))//Проверяет находится ли второй игрок авторизированным на сервере
					{
					    new string3[100];
						format(string3,sizeof(string3),"Игрок %s предложил вам сыграть в кости. Вы согласны?", sendername);
					    ShowPlayerDialog(giveplayerid,4564,DIALOG_STYLE_MSGBOX,"Кости",string3,"Да","Нет");
					}
					else
					{
					    SendClientMessage(playerid, 0xFF0000FF, "Игрок, которому вы предлагаете сыграть, не на сервере");
					}
				}
				else
				{
				    SendClientMessage(playerid, 0xFF0000FF, "Играть в кости с самим собой нельзя");
				}
			}
			else
			{
			    SendClientMessage(playerid, 0xFF0000FF, "Использование данной команды возможно только возле специально отведенного места");
			}
		}
		else
		{
			SendClientMessage(playerid, 0xFF0000FF, "Игрок, которому вы предлагаете сыграть, не на сервере");
		}
		return 1;
	}

и в OnDialogResponse

 
	if(dialogid == 4564)
	{
	    if(response)
	    {
	        new itogofthegame = random(2);
	        new sendername[MAX_PLAYER_NAME];
	        GetPlayerName(playerid, sendername, sizeof(sendername));
	        if(itogofthegame == 0)
	        {
	            new string2[128];
				format(string2, sizeof(string2), "Гражданин %s проиграл в игре кости", sendername);
				ProxDetector(30.0, playerid, string2, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
				printf("%s", string2);
			}
			if(itogofthegame == 1)
			{
			    new string1[128];
				format(string1, sizeof(string1), "Гражданин %s выиграл в игре кости", sendername);
				ProxDetector(30.0, playerid, string1, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
				printf("%s", string1);
			}
		}
		else
		{
		    SendClientMessage(playerid, 0xFFFFFFFF, "Вы отказались от игры в кости");
		}
	}

P.s. в OnDialogResponse не знаю как лучше giveplayerid вывести, так что сделал несколько нестандартного формата.

Перейти к сообщению »


  • Закрытая тема Тема закрыта
В теме одно сообщение

#1
offline   EvgMart

EvgMart
  • 61
    • Сообщений: 147
    • Регистрация: 01.03.15

Мне хочется сделать скрипт на игру в кости. Ну то есть играют 2 человека, один предлагает ставку, другой принимает или отклоняет и всё это производится в чате, а не на диалоговых окнах(так проще будет сделать скрипт мне кажется), естественно надо чтобы игра в кости работала только в интерьере. Если есть такой скрипт, то скиньте пожалуйста. А если нету, то помогите по созданию этого скрипта. Нужно сделать типо как на амазинге.


  • 0

#2
offline   Elrmrnt-Kritik

Elrmrnt-Kritik
  • 810
    • Сообщений: 3 284
    • Регистрация: 19.07.15
✓  Лучший Ответ

В общем сделал, но смотри... Я-то не профессионал, так что код на слабом уровне сделал. Для солидности сделал все же сделал подтверждение желания играть на диалога (DIALOG_STYLE_MSGBOX). Проверку на нахождение в интерьерах если нужно делаешь сам, я лишь сделал ограничение зоны (в какой зоне можно использовать данную команду, если что добавишь еще координаты). Также, по-хорошему, стоит добавить проверку на наличие у игрока костей, которые покупаются в том же 24/7, но не знаю какие у вас переменные... Делайте сами.

 

Непосредственно код в OnPlayerCommandText

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

и в OnDialogResponse

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

P.s. в OnDialogResponse не знаю как лучше giveplayerid вывести, так что сделал несколько нестандартного формата.


  • 4


Количество пользователей, читающих эту тему: 1

0 пользователей, 0 гостей, 0 анонимных


    Alexa (1)

Данную тему посетили 59 пользователей