Контакты Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » GTA мод.
GTA мод.
nynCuKaH Дата: Суббота, 31.03.2012, 20:14:10 | Сообщение # 1
Сообщений: 110
Репутация: 0 [ +/- ]
Здравствуйте,все.
У меня в руках появился интересный мод, GTA. Мне нужна помощь по нему. Заплачу. Нужен хороший знаток или просто программист. Желательно что бы смог писать плагины.
------
1) Двери не запривачиваюттся.(Написал скрипт который приватит , но нужно что бы только я смог заприватить свою дверь , и ее не смогли расприватить.)
2) Нельзя сеть в машину.
3) Не создаются NPC
4) Помогите :)
---------------------
ПОЖАЛУЙСТА
 
_wS_ Дата: Суббота, 31.03.2012, 22:55:56 | Сообщение # 2
На счет 1 я бы подсказал, но нужно более подробное описание, ибо я не понимаю, как ты хочешь чтобы это работало. И там дверей немало, есть несколько разных classname, наверно по ним всем надо ловить какой-то output.

На счет другого не знаю, но про машины где-то я видел на SM форуме скриптик. Впиши в поиск 'sit in the car alliedmodders' - посмотри как они это делают, просто я никогда ничего про машины не делал, не могу подсказать.

http://forums.alliedmods.net/showthread.php?t=158349
 
nynCuKaH Дата: Воскресенье, 01.04.2012, 10:06:59 | Сообщение # 3
Сообщений: 110
Репутация: 0 [ +/- ]
Вообщем суть такова.
GTA сервер IP: 188.64.172.39:27018
Что бы не ждать пока карту скачает вот: http://www.lady-natalya.info/downloads/maps.php
карту скачиваем . rp_california
Дальше. Мод требует больших доработок. _wS_ помоги я заплачу.

Мне нужно что бы было как у этого сервера . Французский: 87.98.179.101:20004

Мой скрипт на закрытие двери:

Code
#pragma semicolon 1
#include <sourcemod>
#include <sdktools>

public OnPluginStart()
{
     RegConsoleCmd("sm_lock", Cmd_Lock, "Locks the door you're looking at.");
     RegConsoleCmd("sm_unlock", Cmd_UnLock, "Locks the door you're looking at.");
}

public Action:Cmd_Lock(client, args)
{
     if(!client || !IsClientInGame(client) || !IsPlayerAlive(client))
         return Plugin_Handled;
      
     new iEnt = GetClientAimTarget(client, false);
     decl String:sBuffer[64];
     if(iEnt > 0
     && IsValidEntity(iEnt)
     && GetEntityClassname(iEnt, sBuffer, sizeof(sBuffer))
     && (StrEqual(sBuffer, "func_door")
     || StrEqual(sBuffer, "func_door_rotating")
     || StrEqual(sBuffer, "prop_door_rotating")))
     {
         AcceptEntityInput(iEnt, "Lock", client);
         ReplyToCommand(client, "Дверь %d закрыта.", iEnt);
     }
     else
     {
         ReplyToCommand(client, "Нет двери чтобы закрыть.");
     }
      
     return Plugin_Handled;
}

public Action:Cmd_UnLock(client, args)
{
     if(!client || !IsClientInGame(client) || !IsPlayerAlive(client))
         return Plugin_Handled;
      
     new iEnt = GetClientAimTarget(client, false);
     decl String:sBuffer[64];
     if(iEnt > 0
     && IsValidEntity(iEnt)
     && GetEntityClassname(iEnt, sBuffer, sizeof(sBuffer))
     && (StrEqual(sBuffer, "func_door")
     || StrEqual(sBuffer, "func_door_rotating")
     || StrEqual(sBuffer, "prop_door_rotating")))
     {
         AcceptEntityInput(iEnt, "Unlock", client);
         ReplyToCommand(client, "Дверь %d открыта.", iEnt);
     }
     else
     {
         ReplyToCommand(client, "Нет двери чтобы открыть.");
     }
      
     return Plugin_Handled;
}

Добавлено (01.04.2012, 09:58:07)
---------------------------------------------
Нужно код отредактировать так. Что бы нельзя было открыть чужую дверь. Закрыл ее 1 человек а другой что бы не смог ее открыть ни как.

Добавлено (01.04.2012, 10:06:59)
---------------------------------------------
А это что за плагин?
http://forums.alliedmods.net/showthread.php?p=1268368

 
nynCuKaH Дата: Воскресенье, 01.04.2012, 10:16:23 | Сообщение # 4
Сообщений: 110
Репутация: 0 [ +/- ]
Попробуй компилировать вот этот плагин. У меня не идет. Может у тебя пойдет.

Прикрепления: cars.sp(34.2 Kb)
 
_wS_ Дата: Воскресенье, 01.04.2012, 12:03:17 | Сообщение # 5
Когда игрок пытается открыть дверь, сделай так:

Code
bool:AccessToOpenDoor(client, door_index)
{
     new door_client = GetEntPropEnt(door_index, Prop_Send, "m_PredictableID");
     if (client == door_client || door_client < 1 || door_client > MaxClients || !IsClientInGame(door_client))
     {
         return true;
     }
     return false;
}


Если AccessToOpenDoor вернет true и игрок закроет дверь, сделай:

Code
SetEntPropEnt(door_index, Prop_Send, "m_PredictableID", client);
 
nynCuKaH Дата: Воскресенье, 01.04.2012, 12:38:19 | Сообщение # 6
Сообщений: 110
Репутация: 0 [ +/- ]
Ну что компилировать смог?
 
_wS_ Дата: Воскресенье, 01.04.2012, 13:07:15 | Сообщение # 7
Нет, видимо код не весь.
 
nynCuKaH Дата: Воскресенье, 01.04.2012, 13:28:08 | Сообщение # 8
Сообщений: 110
Репутация: 0 [ +/- ]
Может возьмешь GTA мод? На починку. и модифицирование.

Добавлено (01.04.2012, 13:28:08)
---------------------------------------------
Не помог твой код. Скинь как должно выглядить возможно я не правильно делаю. Не давно изучаю sourcemod.

 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » GTA мод.
  • Страница 1 из 1
  • 1
Поиск: