Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: [Cmd] [GF] Команда /delo /delow для копов - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

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

  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[Cmd] [GF] Команда /delo /delow для копов команда /delo /delow для копов Оценка: -----

#1
Пользователь офлайн   El_Wayne 

  • Прохожий
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Вот моя первая работа можно сказать она идет как урок/мануал
ко всем new
new PlayerDelo[MAX_PLAYERS];
new PlayerDeloStr[MAX_PLAYERS];

в public OnPlayerConnect вставляем это
PlayerDelo[playerid]=999;
PlayerDeloStr[playerid]=0;

в public onplayercommandtext
	if (strcmp(cmd, "/delo", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
			if(PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pLeader]==1)
			{
			    if (!PlayerToPoint(3.0, playerid, 234.6752,77.2745,1005.0391))
			    //if (PlayerToPoint(3, playerid,255.3,77.4,1003.6) || PlayerToPoint(3,playerid,-1616.1294,681.1594,7.1875) || PlayerInfo[playerid][pLocal] != 255 || PlayerToPoint(3,playerid, 2745.4392,-2453.8701,13.8623))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "   Вы не в департаменте полиции!");
					return 1;
				}
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp)){ SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /delo [playerid] [действие]"); return 1; }
				new pl = strval(tmp);
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp)){
					SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /delo [playerid] [действие]");
					SendClientMessage(playerid, COLOR_GRAD1, "* Действия: открыть / записать / удалить");
					return 1;
				}
				new nam[32];
				GetPlayerName(pl, nam, 32);
    			format(string, 256, "%s.delo", nam);
				if(strcmp(tmp, "открыть", true)==0) {

				    new str[5][128];
				    new strii[666];
				    if(fexist(string)) {
				        new File:f = fopen(string, io_read);
				        if(f) { fread(f, strii); }
				        fclose(f);
				        new ln = strlen(strii);
				    	if(ln<=125) { strmid(str[0], strii, 0, ln); }
				    	if(ln<=250) { strmid(str[0], strii, 0, 125); strmid(str[1], strii, 125, ln); }
				    	if(ln<=375) { strmid(str[0], strii, 0, 125); strmid(str[2], strii, 125, 250); strmid(str[3], strii, 250, ln); }
				    	if(ln<=500) { strmid(str[0], strii, 0, 125); strmid(str[3], strii, 125, 250); strmid(str[3], strii, 250, 375); strmid(str[4], strii, 375, ln); }
				    	if(ln<=615) { strmid(str[0], strii, 0, 125); strmid(str[4], strii, 125, 250); strmid(str[3], strii, 250, 375); strmid(str[4], strii, 375, 500); strmid(str[4], strii, 500, ln); }
				        format(string, 256, "________ Дело %s ________", nam);
				        SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "%s", str[0]); SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "* %s", str[1]); SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "* %s", str[2]); SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "* %s", str[3]); SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "* %s", str[4]); SendClientMessage(playerid, COLOR_WHITE, string);
				        format(string, 256, "__________________________________"); SendClientMessage(playerid, COLOR_WHITE, string);
				    } else { SendClientMessage(playerid, COLOR_GRAD1, "  Дело не найдено."); return 1; }
				} else if(strcmp(tmp, "записать", true)==0) {
				    if(fexist(string)) { SendClientMessage(playerid, COLOR_GRAD1, "  Дело уже существует, вы будите до записывать его..."); }
				    PlayerDelo[playerid]=pl;
				    SendClientMessage(playerid, COLOR_GRAD1, "  Для записи используйте /delow [запись] ");
				} else if(strcmp(tmp, "удалить", true)==0) {
        			if(!fexist(string)) { SendClientMessage(playerid, COLOR_GRAD1, "  Дело не существует."); return 1; }
					fremove(string);
					SendClientMessage(playerid, COLOR_GRAD1, "   Дело удалено... ");
					PlayerDelo[playerid]=0;
					PlayerDeloStr[playerid]=0;
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "   Вы не коп ");
			}
		}
		return 1;
	}
		if (strcmp(cmd, "/delow", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
			if(PlayerInfo[playerid][pMember]==1 || PlayerInfo[playerid][pLeader]==1 && PlayerDelo[playerid]!=999)
			{
			    //if (PlayerToPoint(3, playerid,255.3,77.4,1003.6) || PlayerToPoint(3,playerid,-1616.1294,681.1594,7.1875) || PlayerInfo[playerid][pLocal] != 255 || PlayerToPoint(3,playerid, 2745.4392,-2453.8701,13.8623))
			    if (!PlayerToPoint(3.0, playerid, 236.3610,71.7131,1005.0391))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "   Вы не в отделении полиции!");
					return 1;
				}
				new length = strlen(cmdtext);
				while ((idx < length) && (cmdtext[idx] <= ' '))
				{
					idx++;
				}
				new offset = idx;
				new result[666];
				while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
				{
					result[idx - offset] = cmdtext[idx];
					idx++;
				}
				result[idx - offset] = EOS;
				if(!strlen(result))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /delow [запись]");
					return 1;
				}
				new namee[32];
				new stri[256];
    			GetPlayerName(PlayerDelo[playerid], namee, 32);
			    format(string, 256, "%s.delo", namee);
    			if(!fexist(string)) {
       				new File:f = fopen(string, io_write);
       				format(stri, 1024, "* %s", result);
		        	fwrite(f, stri);
		        	fclose(f);
		        	PlayerDelo[playerid]=999;
		        } else {
		            new File:f = fopen(string, io_append);
       				format(stri, 1024, "   %s", result);
		        	fwrite(f, stri);
		        	fclose(f);
		        	PlayerDelo[playerid]=999;
		        }
		        SendClientMessage(playerid, COLOR_GRAD1, "   Строка записана ");
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "   Вы не коп ");
			}
		}
		return 1;
	}

в public OnGameModeInit
Create3DTextLabel(" /delo ",COLOR_YELLOW,233.1805,76.0081,1005.0391,40.0,0,1);
Create3DTextLabel(" /delow ",COLOR_YELLOW,236.3729,71.3999,1005.0391,40.0,0,1);

и
CreatePickup(1239,23,233.1805,76.0081,1005.0391);//delo
CreatePickup(1239,23,236.3729,71.3999,1005.0391);//delow

Работает без ошибок варнингов на модах GF!

Сообщение отредактировал Alessandro Giordano: 25 Январь 2012 - 06:45
Причина редактирования: Поправил название

8

#2
Пользователь офлайн   Cris_Pro 

  • Хочу создать серверок..
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Норм для рп.
0

#3
Пользователь офлайн   Romzes 

  • © Pawn-Wiki.Ru
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Молодец, для первой роботы хорошо. Лови +
1

#4
Пользователь офлайн   McLean 

  • Pawn-Wiki
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Прикольно, лови +
0

#5
Пользователь офлайн   Antoxa_Wilson 

  • Banned
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
молодец) лови +

#6
Пользователь офлайн   PHARA_OH 

  • Эксперт
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Отлично заберу себе на GF + твой
0

#7
Пользователь офлайн   Арсн 

  • Прохожий
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
Как я понял это команда для того чтобы заводить дело?
Если да,то лови "+"
0

#8
Пользователь офлайн   id228fanta 

  • Прохожий
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
супеер
0

#9
Пользователь офлайн   Aleksei_Sidorov 

  • Прохожий
  • Вставить ник
  • Цитировать
  • Раскрыть информацию

Цитата

26 Errors.

А я так хотел попробовать :(
0

#10
Пользователь офлайн   Nicko_Gun 

  • Прохожий
  • Вставить ник
  • Цитировать
  • Раскрыть информацию
лови плюс команда вобще супер ))
0

Поделиться темой:


  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей