PARTE 2: Sections [ITEMDEF xxx] comentadas.A Section [ITEMDEF xxx] é um objeto de script do tipo ITEM.
Ele é existente do mundo o jogo (seja visível ou não).
pode ser um canhão, uma arma, uma linha de costura, uma pedra, um portal ou o cú que seja. Nunca um NPC ou um jogador.
Cuidado! Existem objetos que tem cara de item, cheiro de item, id de item mas não são itens.
Você não pode move-los ou mesmo remove-los.
São ITENS mas não estão no WORLDFILE* do seu Sphere e sim no SATICS0.MUL. As arvores por exemplo...
Voce pode tentar remover uma árvoe, mas não vai conseguir. Só editando o mul você pode fazer isso.
Os criadores do Sphere acharam melhor por os ITEMDEFs com nomes da ID do item. Por isso que a espada se chama 0f60.
0f60 é o código da PIC da espada (conhecido como ID).
Quer ver?
Baixe e intale o
InsideUO.
Você vai usa-lo muitas vezes. Configure-o direitinho se não não abre.
Na parte de ArtWork e na guia Static Tiles, procure o 0f60.
BINGO!
Desenhinho da Longsword!
Não é bom você criar ITEMDEFs com números como nome. Isso fará o antigo ITEMDEF ser sobrescrito quando o Sphere abre. (ele vai continuar no aquivo .scp dele bonitinho, mas se vc der um .add nele, virá o novo).
A maioria dos scriptsrs (todos que eu conheço) colocam o DEFNAME como nome do ITEMDEF.
Isso quer dizer que, se você for fazer um item, ponha a ITEMDEF da seguinte maneira:
[ITEMDEF i_espada_justiceira]
Vamos para o ITEMDEF comentado:
| QUOTE |
[ITEMDEF 0f60] DEFNAME=i_sword_long RESOURCES=12 i_ingot_iron TYPE=T_WEAPON_SWORD LAYER=1 FLIP=1 DAM=5,33 SKILL=Swordsmanship REQSTR=25 TWOHANDS=N WEIGHT=7 CATEGORY=Provisions - Weapons SUBSECTION=Swords DESCRIPTION=Longsword SKILLMAKE=BLACKSMITHING 53.8 DUPELIST=0f61
ON=@Create HITPOINTS={31 110} |
--====Cabeçalho====--DEFNAME=i_sword_long: Defname tem o mesmo sentido da [SKILL X] que já falamos. Para adicionar a espada lonfa no mundo diga .add i_sword_long.
Para criar uma via script é assim:
SRC.NEWITEM=i_sword_long
SRC.ACT.BOUNCE
NAME=Longsword: Não foicolocada neste script, pois a ID 0f60 já tem um nome Hard Codded. Mas você pode por.
RESOURCES=12 i_ingot_iron: Quando o jogador utilizar o Blacksmithing para criar este item (somente pelo sistema de BS Hard Codded), ele vai antes testar pra ver se o jogador (SRC) tem 12 ingots de ferro e ao fazer a espada, vai consumir isso da backpack (layer 21) do jogador.
TYPE=T_WEAPON_SWORD: TYPE é legal. TYPE é o comportamento de script que o item tem. É no TYPE que esta guardado que qunado der dclick vai equipar e chamar a skill LUMBERJACKING (pra tirar kindling das árvores), que fica um comando que diz que na luta, vai dar dano, fica que quando ela fica velha se quebra e essas coisas. O SPhere tem MUITAS Types. Mas vc tb pode fazer as suas =-) Para se aprofundar nos TYPEs, visite o
compêndio de SPhere 0.55 do Taran. Nos vamos se aprofundar neles mais pra frente.
LAYER=1: Já falei.
DAM=5,33: Quando o CONT acertar um golpe, vai dar um dano entre 5 e 33 (só funcina pra TYPE=t_weapon_*)
SKILL=Swordsmanship: É a skill que ele vai testar para tentar dar o golpe (só funcina pra TYPE=t_weapon_*)
REQSTR=25: Se o SRC não tiver 25 ou mais de STR, não pode equipar. Vai pra bag.
TWOHANDS=N: Se o TWOHANDS for igual a Y (ou 1), você não pode equipar nada na mão esquerda (layer 2) se equipar este. Não fica nada na layer 2, mas ele não deixa equipar nada se este item for de duas mãos.
WEIGHT=7: Peso (em stones) que tem este item. Se ele estiver em qualquer layer do personagem, mesmo na backpack (layer 21), este peso será somado no peso total do char, aumentando o rete de perda de stamina e se o peso total do char passar de um certo número, ele não pode se mover ou pegar mais qualquer coisa.
CATEGORY=Provisions - Weapons
SUBSECTION=Swords
DESCRIPTION=LongswordPara referência do Axis. Procure no axis a categoria, subseção e descrição dele.
SKILLMAKE=BLACKSMITHING 53.8: Para fazer este item, é tastada a perícia Blacksmithing. Ele rola um número entre 1 e a sua skill Blacksmithing. Se este número for MAIOR que 53.8, você tem sucesso.
DUPELIST=0f61: Coisinha do mau
Isso afirma que existe um outro item de ID=0f61 que possui as exatas mesmas características deste aqui. Mas para isso ser efetivado, você precisa criar um ITEMDEF como este a seguir:
| CODE |
[ITEMDEF 0f61] //longsword DUPEITEM=0f60 |
--====Trigges====--ON=@Create: Quando este item for criado, o sphere executa linha por linha o script abaixo.
No nosso caso:
HITPOINTS={31 110} É o tanto de pancada que este item aguenta em combate.
O Sphere compreende {} como um gerador aleatóreo. Um {0 1000} por exemplo vai resultar em um número qualquer entre 0 e 1000.Se você quer fazer uma espada com nome e cor diferente, o @Create é o trigger certo.
| CODE |
on=@Create color=026 name=espada vermelha do clitores sagrado |
TODOS OS ITEMDEFs tem os seguintes Triggers:
@Create
@Death
@TIMER
@DClick
@Click
@Pickup
@Step (não só quando vc pisa, mas a cada segundo q vc está em cima)
@DropOn_Item (quando você jogar em cima de outro item)
@DropOn_Char
@DropOn_Self (quando você jogar em cima de vc ou no seu paperdoll)
ITEMDEFs de t_weapon_* tem mais esses:
@GetHit (quando a arma toma um dano)
@HitTry (quando o dono da arma tenta bater em alguém, antes de fazer testes e rolar danos)
@HitMiss (quando o dono erra)
@Hit (quando o dono acerta)
*WORLDFILE: Arquivo sphereworld.scp que fica na pasta SAVE. Nele consta todos os itens que tem no mundo e são dinâmicos como objeto de script.