Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 06/12/18 em todas áreas

  1. PoRaI

    Name Displacement

    Como tinha dito em outro tópico, estou aqui postando, até pq eu acabei que fiz pra usar em um servidor meu também, rs. De qualquer forma, esse é um código para reposicionar o nome quando uma criatura está com X outfit de forma fácil pelo arquivo OTML. É necessário editar as sources do otclient e compila-lo. No arquivo thingtype.cpp, adicione abaixo de: if(node2->tag() == "opacity") m_opacity = node2->value<float>(); isso: else if(node2->tag() == "name-displacement") m_name_displacement = node2->value<Point>(); No arquivo thingtype.h, adicione acima de: float getOpacity() { return m_opacity; } adicione isso: Point getNameDisplacement() { return m_name_displacement; } acima de: float m_opacity; adicione isso: Point m_name_displacement; No arquivo creatures.cpp, troque isso: // calculate main rects Rect backgroundRect = Rect(point.x-(13.5), point.y, 27, 4); backgroundRect.bind(parentRect); Size nameSize = m_nameCache.getTextSize(); Rect textRect = Rect(point.x - nameSize.width() / 2.0, point.y-12, nameSize); textRect.bind(parentRect); por isso: // calculate main rects const ThingTypePtr& thingType = getThingType(); Rect backgroundRect = Rect(point.x - (13.5) + thingType->getNameDisplacement().x, point.y + thingType->getNameDisplacement().y, 27, 4); backgroundRect.bind(parentRect); Size nameSize = m_nameCache.getTextSize(); Rect textRect = Rect(point.x - (nameSize.width() / 2.0) + thingType->getNameDisplacement().x, point.y - 12 + thingType->getNameDisplacement().y, nameSize); textRect.bind(parentRect); Pronto. Para configurar, basta editar o arquivo .otml do seu otclient, exemplo: creatures 10 name-displacement: 2 -12 11 name-displacement: 5 10 12 name-displacement: -4 3 No caso, alterei a outfit 10 para um displacement no eixo X + 2 e no eixo Y - 12, a outfit 11 para um displacement no eixo X + 5 e no eixo Y + 10 e a outfit 12 para um displacement no eixo X - 4 e no eixo Y + 3. O código foi testado e está funcionando perfeitamente.
    1 ponto
  2. Eae galera, venho trazer mais uma vez as sprites do otPokémon, porém essas são as mais atualizadas. Aproveitem! Screenshots Download Baixar Scan Analisar Créditos otPokémon; GOD Vitor - Por disponibilizar. Até mais!
    1 ponto
  3. nociam

    [Resolvido] ajuda spell

    altere as posições ja tento fazer algo: pos.x = pos.x-1 pos.y = pos.y-1 y = - vai pra cima y = + vai pra baixo x = - vai pra <<<< x = + vai pra >>>>
    1 ponto
  4. felipeek

    Configurando Seu Vocations.xml

    Fiz este tutorial com o intuito de mostrar as principais configurações do arquivo vocations.xml. Vá até a pasta data/XML do seu OT e procure pelo arquivo vocations.xml. Este é o arquivo que deve ser configurado para editar as configurações ligadas com as vocações. Você verá algo parecido com isto: <vocation id="1" name="Sorcerer" description="a sorcerer" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="6" gainhpamount="50" gainmanaticks="3" gainmanaamount="50" manamultiplier="1.1" attackspeed="300" soulmax="100" gainsoulticks="120" fromvoc="1"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="1.5" club="2.0" sword="2.0" axe="2.0" distance="2.0" shielding="1.5" fishing="1.1" experience="1.0"/> </vocation> Como perceberam, usarei neste exemplo as configurações do "Sorcerers". Agora vamos configurar passo a passo. Observe: vocation id="1" Nesta linha, eu aconselho não mexer. Ela representa o ID de cada vocação, que em outros scripts estão sendo utilizados. Portanto, se você mexer no ID de alguma vocação, irá interferir em outras partes do servidor. name="Sorcerer" Aqui é, obviamente, o nome da vocação. Sinta-se livre para colocar o nome que você quiser. description="a sorcerer" Aqui deve ser colocado o nome que irá parecer ao dar "look" no personagem. Pela lógica, se você mudou o nome na linha anterior, deve mudar aqui também. Não se esqueça de deixar o "a" antes do nome ou o "an" caso a próxima palavra começar por vogal para manter o inglês correto needpremium="0" Aqui você informa se a vocação precisa de Premium Account ou não. Se não precisar, coloque "0". Caso precise, mude pra "1". gaincap="10" Esta linha serve pra configurar quanto de CAP (capacidade) esta vocação irá ganhar ao ganhar um level. Eu aconselho muito a sempre manter os valores originais, pois mexer aqui às vezes deixa o servidor "zoado" no futuro, mas isso é opção sua. gainhp="5" Semelhante a linha anterior, aqui você deve informar quanto de HP a vocação ganhará ao mudar de level. Novamente aconselho não mexer. gainmana="30" Semelhante novamente, aqui configura quanto de mana irá ganhar ao ganhar um level, não aconselho mexer. gainhpticks="6" Aqui deve ser configurado o tempo, em segundos, necessário para recuperar certa quantia de HP. Esta quantia será configurada na próxima linha. gainhpamount="50" Nesta linha, você deve configurar o quanto de HP o player irá ganhar dentro do tempo que você configurou na linha anterior. Ou seja, no caso do nosso exemplo, os sorcerers estariam recuperando 50 de HP a cada 6 segundos. gainmanaticks="3" Exatamente igual ao "gainhpsticks", só que agora funciona com a mana. Nesta linha você irá configurar o tempo necessário para ocorrer a recuperação de mana por parte do player. gainmanaamount="50" Também exatamente igual ao "gainhpamount", só que agora com a mana. Aqui deve ser configurado o quanto de mana o personagem irá recuperar dentro do tempo informado na linha anterior. manamultiplier="1.1" Nesta linha deve ser configurado a velocidade que o Magic Level desta vocação subirá. Aconselho a não mexer aqui. Quanto mais alto este valor, maior será a dificulade de ganhar ML. attackspeed="300" Aqui é configurado o Attack Speed da vocação, ou seja, a velocidade de ataque. Quanto menor o valor, mais rápido será o ataque. No nosso exemplo o sorcerer irá atacar muito rápido, pois 300 é um número bem pequeno comparado ao padrão, que é 2000. soulmax="100" Aqui é o número máximo de Soul Points que a vocação terá. Aconselho deixar 100 para vocações sem promotion e 200 para vocações com promotion. gainsoulticks="120" Nesta linha é configurado o tempo, em segundos, necessário para recuperar um Soul Point. No nosso exemplo, cada soul point está sendo recuperado em dois minutos (120 segundos). fromvoc="1" Esta linha deve ser igual à linha "vocation ID" em vocações que não necessitam de promotion. Em vocações que necessitam de promotion, deve ser posta a vocation ID da vocação anterior. Levando em conta que você não está criando novas vocações, não é necessário mexer nesta linha, já que os OTServers sempre vêm configurados. <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> Esta parte é preferível deixar todos os valores em "1.0", pelo simples fato que não é preferível aumentar esses "multiplicadores". Se você quiser aumentar o dano da wand, por exemplo, é melhor aumentar na pasta "weapons", e assim por diante. <skill fist="1.5" club="2.0" sword="2.0" axe="2.0" distance="2.0" shielding="1.5" fishing="1.1" experience="1.0"/> Aqui não há muito o que falar, a não ser o seguinte: Quanto mais alto for o valor, mais difícil será upar na skill configurada, ou seja, será mais fácil ganhar club fighting se o "club" for mudado para 1.0, ao invés de 2.0. Outro exemplo, se a "experience" dos sorceres for aumentada para 2.0, será duas vezes mais difícil de conseguir ganhar experiência. É mais ou menos isso a ideia. Por fim, isso deve ser configurado em todas as vocações, desde as free até as premmium. Espero que gostem do tutorial, abs
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...