Olá. Eu vou fazer isso tão simples quanto eu puder, e para a frente que eu puder.

Download do tutorial em PDF: PDF AKI

  • 1. Criação CreatureScript.


  • Existem outros tutoriais como este? Se assim for, eu não vi nenhum, nem eu de busca. xD
Configurando CreatureScript


Primeiro, se você tiver um script você quer dirigir à sua pasta de origem TrinityCore (não a sua construção). Vou usar o meu Thalmar.cpp script.

Uma vez que você estiver lá, vá para:

Código:

[color=DarkOrange][color=SteelBlue]YourSourceFolder > src > server > scripts  > Custom[/color][/color]


e colocar o seu script personalizado lá. Entendeu? Great! Agora, podemos continuar com a edição do CMakeLists.txt.

Seu CMakeLists.txt está localizado na pasta "Custom", abri-lo.

Ele deve ser parecido:

Código:

[color=DarkOrange][color=SteelBlue]# Copyright (C) 2008-2011 TrinityCore
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

set(scripts_STAT_SRCS
  ${scripts_STAT_SRCS}
)

message("  -> Prepared: Custom")[/color][/color]

Eu sei que você está pensando provavelmente, "O que é isso eo que eu faço?". Bem, eu estou aqui para explicar. O acima deve ser parecido:

Código:

[color=DarkOrange]# Copyright (C) 2008-2011 TrinityCore
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

set(scripts_STAT_SRCS
  ${scripts_STAT_SRCS}
  [color=Red]Custom/Thalmar.cpp[/color]
)

message("  -> Prepared: Custom")[/color]

Lembre-se, eu estou usando Thalmar como o meu script. Assim, você pode adicionar "Custom / YourScript.cpp".

Por que estamos adicionando isso? Você precisa adicionar isso porque permite que o script para trabalhar no jogo. Uma vez que você compilar seu núcleo, CMakeLists estão sendo usados. A localização de seu script está na sua pasta personalizada, assim, nós fazemos "/ Custom".


Se você tiver que terminar, você pode ir para a pasta de construir e
abrir o seu TriniyCore.sln para que possamos adicionar o seu script de
configuração e compilação.

Okay. Se você tiver seu projeto aberto, abra o seu "scripts" do projeto, enquanto no Microsoft Visual 2010 Express Edition. Que já deve estar em sua solução, de modo que você pode simplesmente clicar na pequena seta ao lado dela. Se estiver aberto, clique direito "Source Files" e fazer:

Código:

[color=DarkOrange][color=SteelBlue]Add > Existing Item... > Find Your Script in Custom/YourScript.cpp > Add[/color][/color]

Confuso? Aqui está uma imagem:

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]

Se o seu script é adicionado, vamos agora configurá-lo.

Clique na seta ao lado do seu projeto de jogo. Cabeça aos "Arquivos de Origem" e procure ScriptLoader.cpp, então abri-lo. Se estiver aberto, vá todo o caminho até ver:

Código:

[color=DarkOrange]#ifdef SCRIPTS
/* This is where custom scripts' loading functions should be declared. */
#endif

void AddCustomScripts()
{
#ifdef SCRIPTS
    /* This is where custom scripts should be added. */
#endif
}[/color]

O que é isso? Bem, esta é a forma como o script vai funcionar no jogo. É basicamente carrega o seu construtor de classe.

Como faço para encontrar minha declaração vazio? Deve-se na parte inferior do seu script. Aqui é minha:

Código:

[color=DarkOrange]#ifdef SCRIPTS
/* This is where custom scripts' loading functions should be declared. */
 [color=Red]void AddSC_npc_thalmar();[/color]
#endif

void AddCustomScripts()
{
#ifdef SCRIPTS
    /* This is where custom scripts should be added. */
   [color=Red]AddSC_npc_thalmar();[/color]
#endif
}[/color]


Olá. Eu vou fazer isso tão simples quanto eu puder, e para a frente que eu puder.


  • 1. Criação CreatureScript.



  • Existem outros tutoriais como este? Se assim for, eu não vi nenhum, nem eu de busca. xD


Configurando CreatureScript


Primeiro, se você tiver um script você quer dirigir à sua pasta de origem TrinityCore (não a sua construção). Vou usar o meu Thalmar.cpp script.

Uma vez que você estiver lá, vá para:

Código:
YourSourceFolder> src> servidor> scripts> Custom
e colocar o seu script personalizado lá. Entendeu? Great! Agora, podemos continuar com a edição do CMakeLists.txt.

Seu CMakeLists.txt está localizado na pasta "Custom", abri-lo.

Ele deve ser parecido:
Código:
# Copyright (C) 2008-2011 TrinityCore
#
# Este arquivo é um software livre, como uma exceção especial, o autor dá
# Permissão ilimitada para copiar e / ou distribuí-lo, com ou sem
# Modificações, desde que esta nota seja preservada.
#
# Este programa é distribuído na esperança que será útil, mas
# SEM NENHUMA GARANTIA, até o limite permitido por lei, nem mesmo o
# Garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO PARA UM PROPÓSITO PARTICULAR.

set (scripts_STAT_SRCS
$ {} Scripts_STAT_SRCS
)

mensagem ("-> Preparado: Custom")
Eu sei que você está pensando provavelmente, "O que é isso eo que eu faço?". Bem, eu estou aqui para explicar. O acima deve ser parecido:

Código:
# Copyright (C) 2008-2011 TrinityCore
#
# Este arquivo é um software livre, como uma exceção especial, o autor dá
# Permissão ilimitada para copiar e / ou distribuí-lo, com ou sem
# Modificações, desde que esta nota seja preservada.
#
# Este programa é distribuído na esperança que será útil, mas
# SEM NENHUMA GARANTIA, até o limite permitido por lei, nem mesmo o
# Garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO PARA UM PROPÓSITO PARTICULAR.

set (scripts_STAT_SRCS
$ {} Scripts_STAT_SRCS
Custom / Thalmar.cpp
)

mensagem ("-> Preparado: Custom")
Lembre-se, eu estou usando Thalmar como o meu script. Assim, você pode adicionar "Custom / YourScript.cpp".

Por que estamos adicionando isso? Você precisa adicionar isso porque permite que o script para trabalhar no jogo. Uma vez que você compilar seu núcleo, CMakeLists estão sendo usados. A localização de seu script está na sua pasta personalizada, assim, nós fazemos "/ Custom".


Se você tiver que terminar, você pode ir para a pasta de construir e
abrir o seu TriniyCore.sln para que possamos adicionar o seu script de
configuração e compilação.

Okay. Se você tiver seu projeto aberto, abra o seu "scripts" do projeto, enquanto no Microsoft Visual 2010 Express Edition. Que já deve estar em sua solução, de modo que você pode simplesmente clicar na pequena seta ao lado dela. Se estiver aberto, clique direito "Source Files" e fazer:

Código:
Add> Existing Item ... > Encontre Seu Script em Custom / YourScript.cpp> Adicionar
Confuso? Aqui está uma imagem:

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]

Se o seu script é adicionado, vamos agora configurá-lo.

Clique na seta ao lado do seu projeto de jogo. Cabeça aos "Arquivos de Origem" e procure ScriptLoader.cpp, então abri-lo. Se estiver aberto, vá todo o caminho até ver:

Código:
SCRIPTS # ifdef
/ * Este é o lugar onde funções scripts personalizados 'de carga deve ser declarado. * /
# Endif

AddCustomScripts void ()
{
SCRIPTS # ifdef
/ * Este é o lugar onde scripts personalizados devem ser adicionados. * /
# Endif
}
O que é isso? Bem, esta é a forma como o script vai funcionar no jogo. É basicamente carrega o seu construtor de classe.

Como faço para encontrar minha declaração vazio? Deve-se na parte inferior do seu script. Aqui é minha:

Código:
SCRIPTS # ifdef
/ * Este é o lugar onde funções scripts personalizados 'de carga deve ser declarado. * /
AddSC_npc_thalmar vazio ();
# Endif

AddCustomScripts void ()
{
SCRIPTS # ifdef
/ * Este é o lugar onde scripts personalizados devem ser adicionados. * /
AddSC_npc_thalmar ();
# Endif
}
Agora, compile. Se nenhum erro, agora podemos adicionar o nosso script para o npc queremos ser espertos .. er.


Após adicionar nosso script para a pasta Custom, CMakeLists.txt, o
projeto de código e ScriptLoader.cpp, ele ainda não vai funcionar se
você não definir o ScriptName em creature_template onde seu npc está
localizado.

Para encontrar o seu ScriptName, ele deve estar no fundo do seu construtor. O seu construtor é "XX classe".

Aqui é onde o meu está em ScriptName;

Código:

[color=DarkOrange][color=SteelBlue]class npc_thalmar : public CreatureScript
{
    public:
        npc_thalmar() : CreatureScript("[color=Red]npc_thalmar[/color]") { }[/color][/color]


Em vermelho mostra o ScriptName.

Para obter o npc usar o seu script, vá ao seu banco de dados do mundo e abrir o seu creature_template tabela. Uma vez feito isto, procure o npc você quiser usar o seu script e ir quase até a última coluna e você deve ver "ScriptName". Adicionar "npc_yourscript" para o ScriptName.

Aqui está a minha imagem:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]

Entendeu? Você está pronto para testar seu script agora! Boa sorte .. Espero que tenha gostado deste tutorial.

Creditos:
fabioozzy ( tradução e garimpagem por tutoriais )
QQrofl ( post original e um super amigo )