Ninlin 0 Postado Julho 27, 2020 Share Postado Julho 27, 2020 (editado) Quero saber como é possível fazer com que uma vocation tenha um sexo predefinido. ex: ao criar um Goku o sexo seria male, o player não teria escolha. TFS 1.3 10.98 Editado Julho 27, 2020 por Ninlin Link para o comentário Compartilhar em outros sites More sharing options...
1 DarkWore 112 Postado Julho 30, 2020 Share Postado Julho 30, 2020 34 minutos atrás, Ninlin disse: @DarkWore tentei mas no meu login. lua não possui local playerId = player:getId() @LeoTK pode dizer como fazer isso? tentei apenas excluir mas ai quando o personagem é criado ele vem como female, onde eu posso estar definindo quais eu quero como male e quais eu quero como female. Pronto, código completo: Spoiler function onLogin(player) local loginStr = "Welcome to " .. configManager.getString(configKeys.SERVER_NAME) .. "!" if player:getLastLoginSaved() <= 0 then loginStr = loginStr .. " Please choose your outfit." player:sendOutfitWindow() else if loginStr ~= "" then player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) end loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved())) end player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) local vocations_male = {1,2,3} -- IDs das vocações male local vocations_female = {4,5,6} -- IDs das vocações female local vocation = player:getVocation():getId() if isInArray(vocations_male, vocation) then player:setSex(PLAYERSEX_MALE) else player:setSex(PLAYERSEX_FEMALE) end -- Stamina nextUseStaminaTime[player.uid] = 0 -- Promotion local vocation = player:getVocation() local promotion = vocation:getPromotion() if player:isPremium() then local value = player:getStorageValue(PlayerStorageKeys.promotion) if not promotion and value ~= 1 then player:setStorageValue(PlayerStorageKeys.promotion, 1) elseif value == 1 then player:setVocation(promotion) end elseif not promotion then player:setVocation(vocation:getDemotion()) end -- Events player:registerEvent("PlayerDeath") player:registerEvent("DropLoot") return true end Link para o comentário Compartilhar em outros sites More sharing options...
1 DarkWore 112 Postado Julho 30, 2020 Share Postado Julho 30, 2020 56 minutos atrás, Ninlin disse: agora funcionou direito vlw ☺️ mas acabei encontrando um pequeno erro/incompatibilidade, como eu removi do meu site a opção de selecionar gênero ele esta pondo o sex female por padrão ai quando entra no game o seu script faz efeito e torna em male mas o meu serve quando você entra pela 1 vez ele abre um tela de mudar de outfit oque faz com o personagem seja male mas com outfit female ai só vai para outfit male se clicar em trocar de outfit, você algum de estar resolvendo isso? se não souber ou for muito trabalho ta de boa desde já agradeço pelo script. Você pode utilizar essa função: player:setOutfit(ID_DA_OUTFIT) O código ficaria assim: local vocations_male = {1,2,3} -- IDs das vocações male local vocations_female = {4,5,6} -- IDs das vocações female local vocation = player:getVocation():getId() if isInArray(vocations_male, vocation) then player:setSex(PLAYERSEX_MALE) player:setOutfit(ID_OUTFIT_MALE) -- ID da outfit male else player:setSex(PLAYERSEX_FEMALE) player:setOutfit(ID_OUTFIT_FEMALE) -- ID da outfit female end Dessa forma trocaria a outfit logo após setar o sexo da vocação. Link para o comentário Compartilhar em outros sites More sharing options...
0 Yan Oliveira 211 Postado Julho 30, 2020 Share Postado Julho 30, 2020 Depende muito da maneira como o player é criado na sua base, se é account manager, site ou outra maneira. Como o player é criado? Link para o comentário Compartilhar em outros sites More sharing options...
0 Ninlin 0 Postado Julho 30, 2020 Autor Share Postado Julho 30, 2020 1 hour ago, Yan18 said: Depende muito da maneira como o player é criado na sua base, se é account manager, site ou outra maneira. Como o player é criado? é criado pelo site znote Link para o comentário Compartilhar em outros sites More sharing options...
0 LeoTK 173 Postado Julho 30, 2020 Share Postado Julho 30, 2020 2 horas atrás, Ninlin disse: é criado pelo site znote só editar o sample na database e retirar a escolha de sex na hora de criar o personagem novo Link para o comentário Compartilhar em outros sites More sharing options...
0 DarkWore 112 Postado Julho 30, 2020 Share Postado Julho 30, 2020 (editado) Vá em data\creaturescripts\scripts e abra o login.lua Procure por: local playerId = player:getId() Coloque embaixo: local vocations_male = {1,2,3} -- IDs das vocações male local vocations_female = {4,5,6} -- IDs das vocações female local vocation = player:getVocation():getId() if isInArray(vocations_male, vocation) then player:setSex(PLAYERSEX_MALE) else player:setSex(PLAYERSEX_FEMALE) end Basta configurar os arrays com os IDs das vocações de cada sexo e pronto só utilizar, testado e funcionando em OTX 3 (TFS 1.3). OBS: Independente do sexo escolhido na criação de conta, ao efetuar o login será trocado. Editado Julho 30, 2020 por DarkWore Link para o comentário Compartilhar em outros sites More sharing options...
0 Ninlin 0 Postado Julho 30, 2020 Autor Share Postado Julho 30, 2020 @DarkWore tentei mas no meu login. lua não possui local playerId = player:getId() Quote function onLogin(player) local loginStr = "Welcome to " .. configManager.getString(configKeys.SERVER_NAME) .. "!" if player:getLastLoginSaved() <= 0 then loginStr = loginStr .. " Please choose your outfit." player:sendOutfitWindow() else if loginStr ~= "" then player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) end loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved())) end player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) -- Stamina nextUseStaminaTime[player.uid] = 0 -- Promotion local vocation = player:getVocation() local promotion = vocation:getPromotion() if player:isPremium() then local value = player:getStorageValue(PlayerStorageKeys.promotion) if not promotion and value ~= 1 then player:setStorageValue(PlayerStorageKeys.promotion, 1) elseif value == 1 then player:setVocation(promotion) end elseif not promotion then player:setVocation(vocation:getDemotion()) end -- Events player:registerEvent("PlayerDeath") player:registerEvent("DropLoot") return true end @LeoTK pode dizer como fazer isso? tentei apenas excluir mas ai quando o personagem é criado ele vem como female, onde eu posso estar definindo quais eu quero como male e quais eu quero como female. Link para o comentário Compartilhar em outros sites More sharing options...
0 Ninlin 0 Postado Julho 30, 2020 Autor Share Postado Julho 30, 2020 36 minutes ago, DarkWore said: Pronto, código completo: Reveal hidden contents function onLogin(player) local loginStr = "Welcome to " .. configManager.getString(configKeys.SERVER_NAME) .. "!" if player:getLastLoginSaved() <= 0 then loginStr = loginStr .. " Please choose your outfit." player:sendOutfitWindow() else if loginStr ~= "" then player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) end loginStr = string.format("Your last visit was on %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved())) end player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) local vocations_male = {1,2,3} -- IDs das vocações male local vocations_female = {4,5,6} -- IDs das vocações female local vocation = player:getVocation():getId() if isInArray(vocations_male, vocation) then player:setSex(PLAYERSEX_MALE) else player:setSex(PLAYERSEX_FEMALE) end -- Stamina nextUseStaminaTime[player.uid] = 0 -- Promotion local vocation = player:getVocation() local promotion = vocation:getPromotion() if player:isPremium() then local value = player:getStorageValue(PlayerStorageKeys.promotion) if not promotion and value ~= 1 then player:setStorageValue(PlayerStorageKeys.promotion, 1) elseif value == 1 then player:setVocation(promotion) end elseif not promotion then player:setVocation(vocation:getDemotion()) end -- Events player:registerEvent("PlayerDeath") player:registerEvent("DropLoot") return true end agora funcionou direito vlw ☺️ mas acabei encontrando um pequeno erro/incompatibilidade, como eu removi do meu site a opção de selecionar gênero ele esta pondo o sex female por padrão ai quando entra no game o seu script faz efeito e torna em male mas o meu serve quando você entra pela 1 vez ele abre um tela de mudar de outfit oque faz com o personagem seja male mas com outfit female ai só vai para outfit male se clicar em trocar de outfit, você algum de estar resolvendo isso? se não souber ou for muito trabalho ta de boa desde já agradeço pelo script. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Ninlin 0
Quero saber como é possível fazer com que uma vocation tenha um sexo predefinido.
ex: ao criar um Goku o sexo seria male, o player não teria escolha.
TFS 1.3 10.98
Editado por NinlinLink para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados