[ Новые сообщения · Участники · Правила форума · Поиск · RSS ] |
|
|
Модератор форума: Gank |
Форум - Сообщество любителей игры GTA:MP » SA-MP Scripting » Скрипты [Filterscripts] » [FS] Рисовальщик Ганг Зон |
[FS] Рисовальщик Ганг Зон |
Дата: 11.04.2011, Понедельник, 13:49:31 | Сообщение # $NUMBER
Авторы: SlootLite, OKStyle, Tracker1 Суть очень простая. Создаем файл abra1.txt в scriptfiles. Запускаем скрипт. И вверху скрипта в #define можно изменить высоту, длину, точку старта Скрипт — Тык Примерное заполнение файла abra1.txt. Код: Code {-3800.000000,-3800.000000,-3600.000000,-3600.000000}, {-3600.000000,-3800.000000,-3400.000000,-3600.000000}, {-3400.000000,-3800.000000 ,-3200.000000,-3600.000000}, {-3200.000000,-3800.000000,-3000.000000,-3600.000000}, {-3000.000000,-3800.000000,-2800.000000,-3600.000 0 0 0 }, {-2800.000000,-3800.000000,-2600.000000,-3600.000000}, {-2600.000000,-3800.000000,-2400.000000,-3600.000000}, {-2400.000000,-38 0 0 . 0000 00 ,-2200.000000,-3600.000000}, {-2200.000000,-3800.000000,-2000.000000,-3600.000000}, {-2000.000000,-3800.000000,-1800.000000,-3600.000000}, {-1800.000000,-3800.000000,-1600.000000,-3600.000000}, {-1600.000000,-3800.000000,-1400.000000,-3600.000000}, {-1400.000000,-3 80 0. 00 00 00 ,-1200.000000,-3600.000000},
Code #include <a_samp> #include <dini> new Rows[MAX_PLAYERS]; new GZ_AMOUNT[MAX_PLAYERS]; new Kolvo[MAX_PLAYERS]; new Razmeri[MAX_PLAYERS][2]; new FileName[MAX_PLAYERS][100]; new GangZonesColors[200] = { 0xFF8C13AA,0xC715FFAA,0x20B2AAAA,0xDC143CAA,0x6495EDAA,0xf0e68cAA,0x778899AA,0xFF1493AA,0xF4A460AA,0xEE82EEAA, 0xFFD720AA,0x8b4513AA,0x4 949A0AA,0x148b8bAA,0x14ff7fAA,0x556b2fAA,0x0FD9FAAA,0x10DC29AA,0x534081AA,0x0495CDAA, 0xEF6CE8AA,0xBD34DAAA,0x247C1BAA,0x0C8E5DAA,0x6 3 5 B 0 3A A,0xCB7ED3AA,0x65ADEBAA,0x5C1ACCAA,0xF2F853AA,0x11F891AA, 0x7B39AAAA,0x53EB10AA,0x54137DAA,0x275222AA,0xF09F5BAA,0x3D0A4FAA,0x22F767AA, 0xD6 3034AA,0x9A6980AA,0xDFB935AA, 0x3793FAAA,0x90239DAA,0xE9AB2FAA,0xAF2FF3AA,0x057F94AA,0xB98519AA,0x388EEAAA,0x028151AA,0xA55043AA, 0 x 0D E018AA , 0x93AB1CAA,0x95BAF0AA,0x369976AA,0x18F71FAA,0x4B8987AA,0x491B9EAA,0x829DC7AA,0xBCE635AA,0xCEA6DFAA,0x20D4ADAA, 0x2D74FDAA,0x 3C1C 0DAA,0x1 2D6D4AA,0x48C000AA,0x2A51E2AA,0xE3AC12AA,0xFC42A8AA,0x2FC827AA,0x1A30BFAA,0xB740C2AA, 0x42ACF5AA,0x2FD9DEAA,0xFAFB71AA,0x 05 D1CDAA ,0xC471BDA A,0x94436EAA,0xC1F7ECAA,0xCE79EEAA,0xBD1EF2AA,0x93B7E4AA, 0x3214AAAA,0x184D3BAA,0xAE4B99AA,0x7E49D7AA,0x4C436EAA,0x FA24 CCAA,0xC E76BEAA,0xA0 4E0AAA,0x9F945CAA,0xDCDE3DAA, 0x10C9C5AA,0x70524DAA,0x0BE472AA,0x8A2CD7AA,0x6152C2AA,0xCF72A9AA,0xE59338AA,0x EEDC2D AA,0xD8C76 2AA,0xD8C762AA , 0xFF8C13AA,0xC715FFAA,0x20B2AAAA,0xDC143CAA,0x6495EDAA,0xf0e68cAA,0x778899AA,0xFF1493AA,0xF4A460AA,0x EE82EEAA , 0xFFD720A A,0x8b4513AA,0x4 949A0AA,0x148b8bAA,0x14ff7fAA,0x556b2fAA,0x0FD9FAAA,0x10DC29AA,0x534081AA,0x0495CDAA, 0xEF6CE8AA, 0xBD34DAAA ,0x247C1BAA,0x 0C8E5DAA,0x635B03A A,0xCB7ED3AA,0x65ADEBAA,0x5C1ACCAA,0xF2F853AA,0x11F891AA, 0x7B39AAAA,0x53EB10AA,0x54137DAA, 0x275222AA,0 xF09F5BAA,0x3D0A 4FAA,0x22F767AA,0xD6 3034AA,0x9A6980AA,0xDFB935AA, 0x3793FAAA,0x90239DAA,0xE9AB2FAA,0xAF2FF3AA,0x057F94AA, 0xB98519AA,0x3 88EEAAA,0x028151AA ,0xA55043AA,0x0DE018AA , 0x93AB1CAA,0x95BAF0AA,0x369976AA,0x18F71FAA,0x4B8987AA,0x491B9EAA,0x829DC7AA, 0xBCE635AA,0xCEA 6DFAA,0x20D4ADAA, 0 x2D74FDAA,0x3C1C0DAA,0x1 2D6D4AA,0x48C000AA,0x2A51E2AA,0xE3AC12AA,0xFC42A8AA,0x2FC827AA,0x1A30BFAA, 0xB740C2AA, 0x42A CF5AA,0x2FD9DEAA,0xFAF B71AA,0x05D1CDAA,0xC471BDA A,0x94436EAA,0xC1F7ECAA,0xCE79EEAA,0xBD1EF2AA,0x93B7E4AA, 0x3214AAA A,0x184D3BAA,0xAE4B9 9AA,0x7E49D7AA,0x4C436EA A,0xFA24CCAA,0xCE76BEAA,0xA0 4E0AAA,0x9F945CAA,0xDCDE3DAA, 0x10C9C5AA,0x70524DAA,0x0BE472A A,0x8A2CD7AA,0x6152C2A A,0xCF72A9AA,0xE59338AA,0x EEDC2DAA,0xD8C762AA,0xD8C762FF }; public OnFilterScriptInit() { return 1; } public OnPlayerCommandText(playerid,cmdtext[]) { if(strfind(cmdtext,"/GzStarten",true)!=-1) { ShowPlayerDialog(playerid,12321,DIALOG_STYLE_MSGBOX,"Добро пожаловать","Готовы начать создавать гангзоны? Вы должны стоять в крайнем левом нижнем углу квадрата создаваемых гангзон","Поехали","Не поехали"); return 1; } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(!response) return 1; if(dialogid==12321) { ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12322) { switch(listitem) { case 0: ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); case 1: ShowPlayerDialog(playerid,12324,DIALOG_STYLE_INPUT,"Высота каждой гангзоны","Введите высоту которая будет у КАЖДОЙ гангзоны","Ok","Отмена"); case 2: ShowPlayerDialog(playerid,12325,DIALOG_STYLE_INPUT,"Длинна гангзон","Введите длинну которая будет у КАЖДОЙ гангзоны","Ok","Отмена"); case 3: ShowPlayerDialog(playerid,12326,DIALOG_STYLE_INPUT,"Количество Столбцов","Введите нужное кол-во гангзон","Ok","Отмена"); case 4: ShowPlayerDialog(playerid,12327,DIALOG_STYLE_INPUT,"Количество Рядов","Введите нужное кол-во гангзон","Ok","Отмена"); case 5: ShowPlayerDialog(playerid,12328,DIALOG_STYLE_MSGBOX,"Вы уверены?","Вы уверены?","Ok","Отмена"); case 6: ShowPlayerDialog(playerid,12329,DIALOG_STYLE_INPUT,"Название файла","Введите название файла для сохранения координат гангзон(.txt,.ini)","OK","Отмена"); } return 1; } if(dialogid == 12323) { GZ_AMOUNT[playerid] = strval(inputtext); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12324) { Razmeri[playerid][0] = strval(inputtext); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12325) { Razmeri[playerid][1] = strval(inputtext); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12326) { Rows[playerid] = strval(inputtext); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12327) { Kolvo[playerid] = strval(inputtext); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return 1; } if(dialogid == 12328) { if(Razmeri[playerid][0]==0||Razmeri[playerid][1]==0||Rows[playerid] ==0||Kolvo[playerid]==0||FileName[playerid][0]==0) { ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Удалено\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); return SendClientMessage(playerid,-1,"Некоторые параметры не заполнены"); } new File:gFile; dini_Create(FileName[playerid]); gFile = fopen(FileName[playerid], io_write); new Float:x,Float:y,Float:z; GetPlayerPos(playerid,x,y,z); #pragma unused z new string[256]; new l; for(new step=1; step < Rows[playerid]+1; step++) { for(new i=0;i<Kolvo[playerid]+1;i++) { l=GangZoneCreate(x+Razmeri[playerid][1]*i,y+step*Razmeri[playerid][0], x+Razmeri[playerid][1]*(i+1),y+(step+1)*Razmeri[playerid][0]); format(string,sizeof(string),"{%f,%f,%f,%f},\r\n",x+Razmeri[playerid][1]*i,y+step*Razmeri[playerid][0], x+Razmeri[playerid][1]*(i+1),y+(step+1)*Razmeri[playerid][0]); GangZoneShowForAll(l,GangZonesColors[random(sizeof(GangZonesColors))]); fwrite(gFile,string); } } fclose(gFile); } if(dialogid == 12329) { strmid(FileName[playerid],inputtext,0,200); ShowPlayerDialog(playerid,12322,DIALOG_STYLE_LIST,"Параметры гангзон","Кол-во\nВысота\nДлина\nСтолбцы\nРяды\nСоздать гангзоны\nИмя файла для сохранения","ok","cancel"); } return 1; } #pragma unused ret_memcpy Можно все настроить из игры команда /gzstarten(проверки на админа нету) |
| |||
| |||