- ВойтиАвторизация через uNet
- РегистрацияРегистрация на сайте через uNet
Текущая версия SA-MP: 0.3.7
IP: 77.220.180.96:7777
Новые сообщения · Поиск |
|
|
Модератор форума: KaTacTpOqpa |
Форум Помощь по скриптингу SA-MP Вопросы по скриптингу большой вопрос (скриптеры все сюда) |
большой вопрос | ||||
|
BJIADOKC | Сообщение # 2 | 12:31:41 26 Май 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
такс, ну это не так сложно... приду домой, отпишусь тут больше не сижу... открыл свой проект |
=TRAUSER= | Сообщение # 3 | 15:59:15 27 Май 2011 |
Пользователи
Сообщений: 132
Репутация: 2
|
жду P.S ты до завтра смош написать? Добавлено (27.05.2011, 15:59) |
BJIADOKC | Сообщение # 4 | 20:41:26 27 Май 2011 |
Скриптеры
Сообщений: 601
Репутация: 161
|
в начало: Code #define DIALOG_OPEN 3445 new Float:OpenPickupPos[3]; //это позиция пикапа new Float:VorotaPos[3]; //это изначальная позиция ворот new Float:VorotaMoveTo[3]; //это позиция ворот, куда их нужно двигать new OpenPickup; //сам пикап new GateID = 0; //заместо 0 напиши ид модели ворот (я не помню) new PickupID = 0; //заместо 0 напиши ид модели нужного пикапа new vorota; //сами ворота new bool:vorotaOpened = false; в OnGameModeInit (если фильтрскрипт то в OnFilterScriptInit) Code OpenPickupPos[0] = 0.0; //тут заместо 0.0 напиши X позицию пикапа OpenPickupPos[1] = 0.0; //тут заместо 0.0 напиши Y позицию пикапа OpenPickupPos[2] = 0.0; //тут заместо 0.0 напиши Z позицию пикапа VorotaPos[0] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (X) VorotaPos[1] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Y) VorotaPos[2] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Z) VorotaMoveTo[0] = 0.0; //тут заместо 0.0 напиши позицию X кцда надо двигать ворота VorotaMoveTo[1] = 0.0; //тут заместо 0.0 напиши позицию Y кцда надо двигать ворота VorotaMoveTo[2] = 0.0; //тут заместо 0.0 напиши позицию Z кцда надо двигать ворота vorotaOpened = false; vorota = CreateObject(GateID,VorotaPos[0],VorotaPos[1],VorotaPos[2]); OpenPickup = CreatePickup(PickupID,23,OpenPickupPos[0],OpenPickupPos[1],OpenPickupPos[2]); в OnPlayerPickUpPickup Code if(pickupid == OpenPickup && IsPlayerInRangeOfPoint(playerid,15.0,OpenPickupPos[0],OpenPickupPos[1],OpenPickupPos[2])) return ShowPlayerDialog(playerid,DIALOG_OPEN,DIALOG_STYLE_MSGBOX,"Открыть ворота","Открыть ворота?","Да","Нет"); в OnDialogResponse Code switch(dialogid) { case DIALOG_OPEN: { switch(response) { case 0: return 1; case 1: { if(vorotaOpened) return SendClientMessage(playerid,0xAFAFAFAA,"Ворота уже открыты!"); vorotaOpened = true; MoveObject(vorota,VorotaMoveTo[0],VorotaMoveTo[1],VorotaMoveTo[2],2.0); SetTimer("CloseVorota",1000*10,false); return SendClientMessage(playerid,0xAFAFAFAA,"Вы открыли ворота"); } } } } и в самый конец Code forward CloseVorota(); public CloseVorota() { vorotaOpened = false; return MoveObject(vorota,VorotaPos[0],VorotaPos[1],VorotaPos[2],2.0); } by BJIADOKC тут больше не сижу... открыл свой проект |
=TRAUSER= | Сообщение # 5 | 14:37:37 28 Май 2011 |
Пользователи
Сообщений: 132
Репутация: 2
|
Code #define DIALOG_OPEN 3445 new Float:OpenPickupPos[3]; //это позиция пикапа new Float:VorotaPos[3]; //это изначальная позиция ворот new Float:VorotaMoveTo[3]; //это позиция ворот, куда их нужно двигать new OpenPickup; //сам пикап new GateID = 0; //заместо 0 напиши ид модели ворот (я не помню) new PickupID = 0; //заместо 0 напиши ид модели нужного пикапа new vorota; //сами ворота new bool:vorotaOpened = false; а тут надо что то писать? Code OpenPickupPos[0] = 0.0; //тут заместо 0.0 напиши X позицию пикапа OpenPickupPos[1] = 0.0; //тут заместо 0.0 напиши Y позицию пикапа OpenPickupPos[2] = 0.0; //тут заместо 0.0 напиши Z позицию пикапа VorotaPos[0] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (X) VorotaPos[1] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Y) VorotaPos[2] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Z) VorotaMoveTo[0] = 0.0; //тут заместо 0.0 напиши позицию X кцда надо двигать ворота VorotaMoveTo[1] = 0.0; //тут заместо 0.0 напиши позицию Y кцда надо двигать ворота VorotaMoveTo[2] = 0.0; //тут заместо 0.0 напиши позицию Z кцда надо двигать ворота vorotaOpened = false; vorota = CreateObject(GateID,VorotaPos[0],VorotaPos[1],VorotaPos[2]); OpenPickup = CreatePickup(PickupID,23,OpenPickupPos[0],OpenPickupPos[1],OpenPickupPos[2]); где ворота там писать объект, координаты Code VorotaMoveTo остальное вроде понял! |
Demetrius | Сообщение # 6 | 20:41:39 28 Май 2011 |
VIP-пользователи
Сообщений: 1192
Репутация: 158
|
Quote (=TRAUSER=) а тут надо что то писать? ща напишу Quote (=TRAUSER=) #define DIALOG_OPEN 3445 ниче не изменяй Quote (=TRAUSER=) new Float:OpenPickupPos[3]; //это позиция пикапа тож ниче не пиши Quote (=TRAUSER=) new Float:VorotaPos[3]; //это изначальная позиция ворот тож ниче не пиши Quote (=TRAUSER=) new Float:VorotaMoveTo[3]; //это позиция ворот, куда их нужно двигать тоже ниче не пиши Quote (=TRAUSER=) new OpenPickup; //сам пикап тоже все как есть оставляй Quote (=TRAUSER=) new GateID = 0; //заместо 0 напиши ид модели ворот (я не помню) вместо 0 напиши ид модели ворот Quote (=TRAUSER=) new PickupID = 0; //заместо 0 напиши ид модели нужного пикапа вместо 0 напиши ид модели нужного пикапа Quote (=TRAUSER=) new vorota; //сами ворота new bool:vorotaOpened = false; оставь как есть Quote (=TRAUSER=) где ворота там писать объект, координаты не ту во как не GrateObject, а каждая координата пишется отдельно Quote (=TRAUSER=) OpenPickupPos[0] = 0.0; //тут заместо 0.0 напиши X позицию пикапа здесь координата X пикапа Quote (=TRAUSER=) OpenPickupPos[1] = 0.0; //тут заместо 0.0 напиши Y позицию пикапа здесь координата Y пикапа Quote (=TRAUSER=) OpenPickupPos[2] = 0.0; //тут заместо 0.0 напиши Z позицию пикапа здесь координата Z пикапа Quote (=TRAUSER=) VorotaPos[0] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (X) здесь координата X ворот Quote (=TRAUSER=) VorotaPos[1] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Y) здесь координата Y ворот Quote (=TRAUSER=) VorotaPos[2] = 0.0; //тут заместо 0.0 напиши изначальную позицию ворот (Z) здесь координата Z ворот Quote (=TRAUSER=) VorotaMoveTo[0] = 0.0; //тут заместо 0.0 напиши позицию X куда надо двигать ворота здесь координата X открытых ворот Quote (=TRAUSER=) VorotaMoveTo[1] = 0.0; //тут заместо 0.0 напиши позицию Y кцда надо двигать ворота здесь координата Y открытых ворот Quote (=TRAUSER=) VorotaMoveTo[2] = 0.0; //тут заместо 0.0 напиши позицию Z кцда надо двигать ворота здесь координата Z открытых ворот Sweet >>> Armin >>> Demetrius SA:MP >> MTA:SA >> IRL |
| |||
| |||