Triffid69 Posted February 13, 2013 Share Posted February 13, 2013 Помогите добрые люди, суть в том что нужно переделать команду чтобы назначать лидера фракции не через ид, а через ник игрока. вот скрипт: function setPlayerLeader ( source, cmd, ident, faction ) local accName = getAccountName ( getPlayerAccount ( source ) ) if isObjectInACLGroup ( "user." .. playerName, aclGetGroup ( "Admin" ) ) then for id, player in ipairs ( getElementsByType ( "player" ) ) do if ident == getElementData ( player, "playerid" ) then setElementData ( player, "faction", tonumber(faction) ) setElementData ( player, "rank", 5 ) setElementModel ( player, factions[tonumber(faction)][16] ) end end end end addCommandHandler ("makeleader", setPlayerLeader) Link to comment
Flaker Posted February 13, 2013 Share Posted February 13, 2013 Ну помоему в коде отражена попытка проверки нахождения аккаунта в ACL группе Admin... Попытка не удачная, на сколько я вижу... Вобще у тебя слова с кодом не связаны... Link to comment
Triffid69 Posted February 13, 2013 Author Share Posted February 13, 2013 на сколько мне известно здесь идет проверка на админа, а потом уже назначение лидера, если тот кто написал команду админ то функция срабатывает. Link to comment
Flaker Posted February 13, 2013 Share Posted February 13, 2013 Пунктуация - удел слабаков? Хех... А человек который это писал, в дебаг заглядывал? (/dbugscript 3) Вобщем, этот код в корне не верен! Его не исправить( Link to comment
Triffid69 Posted February 13, 2013 Author Share Posted February 13, 2013 я не в курсе кто писал, скорее всего тот кто делал весь мод. У меня просьба помочь сделать скрипт фракций или дать ссылочку на скрипт\ мод. Или-же напишите как заменить вместо ида на ник как указано в первом посте. Link to comment
AMARANT Posted February 13, 2013 Share Posted February 13, 2013 У меня просьба помочь сделать скрипт фракций или дать ссылочку на скрипт\ мод. Тебе могут разве что помочь по каким-то нюансам твоего скрипта, если ты его решишь сам писать. В чужих системах с коммьюнити никто копаться не будет, лучше уж свяжись с автором. А вообще использовать, имхо, в своем моде чужой скрипт, да еще и фракций - это гиблое дело. Link to comment
Triffid69 Posted February 14, 2013 Author Share Posted February 14, 2013 Вот я и прошу команду на то, чтобы вводить не ид, а ник для назначения, без разницы что с этим скриптом который я выложил, мне нужна помощь которую я описал в первом посту. Заранее спасибо. Link to comment
Memory Posted February 14, 2013 Share Posted February 14, 2013 Если я правильно понял, то вы хотите сделать что-то типо такого. А вобще разобрались бы с некоторыми простыми функциями сами. В wiki они все есть. function setPlayerLeader ( source, cmd, ident, faction ) local accName = getAccountName ( getPlayerAccount ( source ) ) local targetPlayer = getPlayerFromName ( ident ) if isObjectInACLGroup ( "user."..accName, aclGetGroup ( "Admin" ) ) then if ( targetPlayer ) then setElementData ( targetPlayer, "faction", tonumber(faction) ) setElementData ( targetPlayer, "rank", 5 ) setElementModel ( targetPlayer, factions[tonumber(faction)][16] ) outputChatBox( "#00ff00[успешно] #ffffff"..ident .. " #00ff00новый лидер", source, 255, 255, 255, true) else outputChatBox( ident .. " #ff0000не найден", source, 255, 255, 255, true) end else outputChatBox( "У вас нет прав администратора.", source, 255, 255, 255, true) end end addCommandHandler ("makeleader", setPlayerLeader) Link to comment
Triffid69 Posted February 15, 2013 Author Share Posted February 15, 2013 Благодарствую, все отлично пошло, буду знать данную команду. И вопросик еще. Можно-ли сделать так чтобы игрок с определенным ником мог заходить только в определенный промежуток времени? Link to comment
Vamp1r Posted February 15, 2013 Share Posted February 15, 2013 Можно-ли сделать так чтобы игрок с определенным ником мог заходить только в определенный промежуток времени? Да, можно. Создать файл/базу (или использовать имеющуюся), в которой бы хранился этот промежуток времени для определенного ника. И когда игрок входит на сервер, сравнивать информацию из файла/базы с текущим временем (getRealTime()). Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now