Вот сделал на базе ворота , чтоб никто не заехал , и хочю чтоб по комманде , например /net они исчезали , а по комманде /est появлялись! Вот данные варот , они ID 0 ,
(975,-75.2778,-358.8,2.0246,0,0,90) вот их ID и место расположения ! Просьба написать кусок скрипта , который можно вставить в сам скрипт (The Godfather) ! Заранее спасибо!
Работа с объектами
Сообщений 1 страница 30 из 36
Поделиться12007-11-16 17:17:57
Поделиться22007-11-16 17:59:27
Вот сделал на базе ворота , чтоб никто не заехал , и хочю чтоб по комманде , например /net они исчезали , а по комманде /est появлялись! Вот данные варот , они ID 0 ,
(975,-75.2778,-358.8,2.0246,0,0,90) вот их ID и место расположения ! Просьба написать кусок скрипта , который можно вставить в сам скрипт (The Godfather) ! Заранее спасибо!
new ID;
if(!strcmp(cmdtext,"/est"))
{
if (!IsValidObject(ID))
{
ID=CreateObject(975,-75.2778,-358.8,2.0246,0,0,90);
}
return 1;
}
if(!strcmp(cmdtext,"/net"))
{
if (IsValidObject(ID))
{
DestroyObject(ID);
}
return 1;
}
работает или нет не знаю, не тестил
тут много вариантов можно придумать:
через MoveObject(),
через GetObjectPos(),SetObjectPos(),
или тот который я написал.
Отредактировано Evgeniy (2007-11-16 18:05:56)
Поделиться32007-11-16 18:08:46
Спасиб! А вот куда это все вставить?В какую часть скрипта?
Поделиться42007-11-16 18:13:11
Вот написал:
public OnPlayerCommandText(playerid, cmdtext[]);
new ID;
if(!strcmp(cmdtext,"/est"))
{
if (!IsValidObject(ID))
{
ID=CreateObject(975,-75.2778,-358.8,2.0246,0,0,90);
}
return 1;
}
if(!strcmp(cmdtext,"/net"))
{
if (IsValidObject(ID))
{
DestroyObject(ID);
}
return 1;
}
Вот получил:
C:\Scripts\animlist\gf.pwn(6845) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(6845) : error 029: invalid expression, assumed zero
C:\Scripts\animlist\gf.pwn(6845) : error 017: undefined symbol "playerid"
C:\Scripts\animlist\gf.pwn(6847) : error 017: undefined symbol "cmdtext"
C:\Scripts\animlist\gf.pwn(6853) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(6855) : error 017: undefined symbol "cmdtext"
C:\Scripts\animlist\gf.pwn(6861) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(6868) : warning 217: loose indentation
Поделиться52007-11-16 18:13:40
Спасиб! А вот куда это все вставить?В какую часть скрипта?
в скрипте должна быть такая строчка
public OnPlayerCommandText(playerid, cmdtext[]) {
вот после нее и добавляй
Отредактировано Evgeniy (2007-11-16 18:16:29)
Поделиться62007-11-16 18:16:13
Сообщение выше ^
Поделиться72007-11-16 18:19:12
Сообщение выше ^
вижу, добавляй после public OnPlayerCommandText(playerid, cmdtext[]) {
new ID; надо писать в самом начале скрипта
а это че вообще такое у тебя "public OnPlayerCommandText(playerid, cmdtext[]);" я без понятия
Отредактировано Evgeniy (2007-11-16 18:20:23)
Поделиться82007-11-16 18:28:27
Вот нашол:
//---------------------------<[ OnPlayerCommandText ]>--------------------------------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new cmd[256];
new tmp[256];
new giveplayerid, moneys, idx;
cmd = strtok(cmdtext, idx);
Что сюда добавить?
Поделиться92007-11-16 18:32:30
Куча ерроров , НО , всётаки скомпелтровалось! Спасибо!
C:\Scripts\animlist\gf.pwn(1996) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8176) : warning 219: local variable "ID" shadows a variable at a preceding level
C:\Scripts\animlist\gf.pwn(8270) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8276) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8284) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8292) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(26320) : warning 203: symbol is never used: "ID"
Поделиться102007-11-16 18:33:20
уже ответил же
вижу, добавляй после public OnPlayerCommandText(playerid, cmdtext[]) {
new ID; надо писать в самом начале скрипта
а это че вообще такое у тебя "public OnPlayerCommandText(playerid, cmdtext[]);" я без понятияОтредактировано Evgeniy (Сегодня 18:20:23)
"ID" уже гдето используется, переименуй тогда на чтонить другое, например, "ID12"
Отредактировано Evgeniy (2007-11-16 18:40:09)
Поделиться112007-11-16 18:39:55
А ещё один вопрос...я пишу /net , а что далее?
Поделиться122007-11-16 18:41:45
А ещё один вопрос...я пишу /net , а что далее?
проверь, я то откуда знаю
поидее ворота должны исчезнуть)
Отредактировано Evgeniy (2007-11-16 18:42:07)
Поделиться132007-11-16 18:44:43
А вот ваще чёто им както пофиг...
Поделиться142007-11-16 18:46:00
New ID переимменовать на new id12 ?
Поделиться152007-11-16 18:52:57
Переименовал:
if(!strcmp(cmdtext,"/est"))
{
if (!IsValidObject(ID12))
{
ID12=CreateObject(975,-75.2778,-358.8,2.0246,0,0,90);
}
return 1;
}
if(!strcmp(cmdtext,"/net"))
{
if (IsValidObject(ID12))
{
DestroyObject(ID12);
}
return 1;
}
Получил:
C:\Scripts\animlist\gf.pwn(1996) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8176) : warning 219: local variable "ID12" shadows a variable at a preceding level
C:\Scripts\animlist\gf.pwn(8270) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8276) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8284) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8292) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(26320) : warning 203: symbol is never used: "ID12"
Поделиться172007-11-16 18:59:57
незнаю почему тебя так, но я тут посмотрел на твои координаты... ворота у тебя вообще под землей гдето
Поделиться182007-11-16 19:02:20
Немогёт быть!Я их вижу то ... шас ещё раз пришлю коорды
CreateObject(975,-75.2778,-358.8,2.0246,0,0,90); //ВОТОТА
Поделиться192007-11-16 19:11:01
Немогёт быть!Я их вижу то ... шас ещё раз пришлю коорды
CreateObject(975,-75.2778,-358.8,2.0246,0,0,90); //ВОТОТА
да все работает, я у себя проверил. только они полность дорогу то не перекрывают) зачем тогда они?
можешь сделать вот такой вот фильтр скрипт:
#include <a_samp>
new IDObj;
new vorota=0;
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext,"/est"))
{
if (vorota==0)
{
IDObj=CreateObject(975,-75.2778,-358.8,2.0246,0,0,90);
vorota=1;
}
return 1;
}
if(!strcmp(cmdtext,"/net"))
{
if (vorota==1)
{
DestroyObject(IDObj);
vorota=0;
return 1;
}
}
return 0;
}
Поделиться202007-11-16 19:18:08
Спасиб , тока у меня мнооого варот , а имменно эти надо чтоб исчезали!
Поделиться212007-11-16 19:19:38
Спасиб , тока у меня мнооого варот , а имменно эти надо чтоб исчезали!
понятно, тогда лучше сделать чтобы ездили, влево-вправо
Поделиться222007-11-16 19:22:15
А МОЖНО?!?!?
Поделиться232007-11-16 19:26:34
81.177.26.191:7777 а вот наш IP , могу показать всё что сделал , токо вот енто не работает!
Поделиться242007-11-16 19:32:27
81.177.26.191:7777 а вот наш IP , могу показать всё что сделал , токо вот енто не работает!
если у тебя по умолчанию ворота видны то сделай new vorota=1;
Поделиться252007-11-16 19:39:26
угу , сделал!
Поделиться262007-11-16 19:40:53
C:\Scripts\animlist\gf.pwn(1997) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8312) : warning 217: loose indentation
C:\Scripts\animlist\gf.pwn(8335) : warning 225: unreachable code
C:\Scripts\animlist\gf.pwn(8335) : warning 217: loose indentation
Поделиться272007-11-16 19:47:01
Вот ошибки , я добавилв в сам скрипт это!
Поделиться282007-11-16 19:49:01
угу , сделал!
наилучшим вариантом для тебя мне кажется будет, команды:
if(!strcmp(cmdtext,"/open"))
{
MoveObject(0,-75.2778,-365.8,2.0246,1);
return 1;
}if(!strcmp(cmdtext,"/close"))
{
MoveObject(0,-75.2778,-358.8,2.0246,1);
return 1;
}
двигают ворота влева-вправо
Поделиться292007-11-16 19:50:44
угу, НО комманда /close и /open УЖЕ есть! Мона их переименовать на /close123 и /open123 ?
Поделиться302007-11-16 19:53:07
угу, НО комманда /close и /open УЖЕ есть! Мона их переименовать на /close123 и /open123 ?
конешн, даже нужно
Похожие темы
CreateObject с помощью команд | Вопросы по созданию скриптов | 2007-12-05 |
С другой стороны: Интервью с командой МТА | Новости | 2007-04-27 |
Функции | Обучающие статьи | 2007-04-06 |
нужна помощь по исправлению мода | Вопросы по созданию скриптов | 2007-10-09 |
Freeroam | Гейммоды | 2008-07-08 |