KruTolic_rus Posted July 12, 2013 Share Posted July 12, 2013 Сижу сутки над этим всем говном,уже просто бесит,все варианты перепробывал,всеравно где-то вылезет ошибка. То boolen,то Bad Argument,то еще что-то... Уже фантазии нет делать что-то,вечно не получается. Вариантов 30 точно перепробывал,все равно... Как мне исправить Boolen? ОШИБКИ attmept to concatenate local 'account' ( a boolean ) и 7: Bad argument @ 'getAccount' - boolean SERVER: Zone69 = aclGetGroup ( "Zone69" ) function InvitePlayers (thePlayer,command,accountName) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ( "user."..accName, Zone69 ) then local account = getAccount ( getAccountName ( getPlayerAccount ( accountName ) ) ) aclGroupAddObject ( aclGetGroup ( "Zone69Players" ), "user."..account) if not isObjectInACLGroup ( "user."..accName, Zone69 ) then outputChatBox ("You are not Leader!" , thePlayer ) end end end addCommandHandler ( "invite",InvitePlayers ) Link to comment
AMARANT Posted July 13, 2013 Share Posted July 13, 2013 Конкретно какие строки и что за ошибка. Это весь код? Link to comment
Ruga Posted July 13, 2013 Share Posted July 13, 2013 прежде чем пытатся переписать чужой код может следует написать свой)) тогда 70 процентов твоих проблем связанных с кодерством исчезнет... function InvitePlayers (thePlayer,command, accountName ) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ИМЯ_ГРУППЫ" ) ) then if accountName then -- я так понял должно проверить что бы админ ввел команду с именем игрока и имя добавилось в acl -- но принять в группу сможет любой состоящий в этой группе aclGroupAddObject (aclGetGroup("имя группы"), "user."..accountName) else outputChatBox ("1 аргумент отсутсвует, /invite имя " , thePlayer ) end -- вместо if not isObjectInACLGroup ( "user."..accName, Zone69 ) then нужно было тогда уж ставить elseif но проще юзать else если тебе не нужно запиливать и проверять много "всего" почитай о if else else outputChatBox ("Ваш уровень магии не достаточно силен !" , thePlayer ) end end end addCommandHandler ( "invite",InvitePlayers ) Link to comment
KruTolic_rus Posted July 13, 2013 Author Share Posted July 13, 2013 прежде чем пытатся переписать чужой код может следует написать свой)) тогда 70 процентов твоих проблем связанных с кодерством исчезнет... function InvitePlayers (thePlayer,command, accountName ) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ИМЯ_ГРУППЫ" ) ) then if accountName then -- я так понял должно проверить что бы админ ввел команду с именем игрока и имя добавилось в acl -- но принять в группу сможет любой состоящий в этой группе aclGroupAddObject (aclGetGroup("имя группы"), "user."..accountName) else outputChatBox ("1 аргумент отсутсвует, /invite имя " , thePlayer ) end -- вместо if not isObjectInACLGroup ( "user."..accName, Zone69 ) then нужно было тогда уж ставить elseif но проще юзать else если тебе не нужно запиливать и проверять много "всего" почитай о if else else outputChatBox ("Ваш уровень магии не достаточно силен !" , thePlayer ) end end end addCommandHandler ( "invite",InvitePlayers ) это мой код) просто я скопировал функции типо isObjectInACLGorup Ага,в том и дело,что у меня получалось сделать этот АСЛ,но по имени,имя добавлялось в АСЛ,а игрок не ставал членом,в АСЛ нужно брать имя аккаунта,не иначе... Link to comment
Ruga Posted July 13, 2013 Share Posted July 13, 2013 не понял тебя если честно, принцип такой, в асл есть имя, игрок под таким именем заходит на сервер и он должен залогинится что бы вступить в права этой группы, а если он гость то и прав нет)) login имя пароль, или лог панель для этого)) 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