Brazilian Modding Studio
Olá, seja bem vindo à Comunidade BMS!

Para se registrar no fórum, siga os passos:

1 - Clique em "Registrar-se" aqui em baixo;
2 - Aceite os termos de serviço;
3 - Escolha um nome de usuário e senha;
4 - Realize o login no fórum clicando em "Conectar-se".

Compartilhe
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 13
Reputação : 0
Desde : 07/02/2018
Ver perfil do usuário
em Sab 14 Abr 2018, 15:29
sera que podem me ajudar a criar um mod? eu andei estudando o tutorial daqui do forum, mas ainda to com dificuldade em varios bglhs, eu peguei o basico entao nao precisa se preocupar com termos, mas to me embolando no script tem vezes que eu n sei qual comando eu devo usar pra fzr tal coisa. (na vdd esse e meu grande problema)

Eu tentei fazer com que quando o meu player passasse em cima do pickup da casa a venda(property_fsale, ModelID: 1273) aparecesse a mensagem de que "a casa esta a venda"
isso eh totalmente basico eu acho mas eu queria uma ajuda com qual comando usar, e definir o modelo do pickup.

Aonde eu to errando? https://imgur.com/a/GPOw3
eu tentei usar o comando de quando se coleta um pickup, e tentei definir o pickup usando o id dele, mas com isso ele passa em cima da casa e simplesmente nao aparece nada kkkkkk

talvez eu tenha q definir que e meu player quem tem que pegar, usar um:

LVAR_INT myplayer
LVAR_FLOAT x y z

GET_PLAYER_CHAR 0 myplayer

Eu fiz desse jeito nesse script:
https://imgur.com/a/esecc

Eu consigo dizer que pra aparecer a msg tem que ter um pickup aonde o cj esta, mas nao consigo definir qual o pickup


E isso que eu quero fazer, o proprio game tem +- so que com outra mensagem:
https://imgur.com/a/OKX2j "Aperte TAB para comprar essa propriedade"

O Mod completo nao e so isso, na vdd a intencao final nem e mostrar uma mensagem, eu so queria ir por etapas e pelo basico, se no basico ja to me enrolando imagina querer fazer tudo de uma vez mas se quiserem me ajudar pro final ja me ajudariam dizendo como faco pra mandar o script escrever no jogo, obs: como se eu estivesse apertando as teclas do meu teclado, por exemplo: na mensagem diz que pra comprar a casa tem q apertar TAB, qual comando eu usaria pra mandar o script pressionar o tab sozinho se o "IF" do CJ no pickup da casa resultasse verdadeiro?
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18203
Reputação : 384
Desde : 04/05/2012
Idade : 21
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com
em Dom 15 Abr 2018, 00:32
Poderia colocar seu código dentro de um code.

HAS_PICKUP_BEEN_COLLECTED teste se pegou um pickup em específico, precisa enviar uma handle, não o modelo. https://gtagmodding.com/opcode-database/opcode/0214/

Dê uma olhada no comando CREATE_PICKUP

O main.scm usa este opcode para criar o pickup com mensagem: https://gtagmodding.com/opcode-database/opcode/0518/
CREATE_FORSALE_PROPERTY_PICKUP

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 13
Reputação : 0
Desde : 07/02/2018
Ver perfil do usuário
em Sab 21 Abr 2018, 02:35
Desculpa a demora, tava tendo problemas com o pc kkkkkk e vou pedir desculpas dnv, pq pedi pra nao se preocupar com termos mas vou ser sincero pra vc que nao entendi oq eh handle nem como usar, pesquisei mas n sei se handle e algo ja predefinido pra especificar o pickup ou se eu tenho que criar no proprio code mesmo eu vendo os exemplos do CREATE_PICKUP que eu vi ate que tem uma numeracao 18 pra ele mas acho q tem maior relacao com o mta, meu code:

Código:
SCRIPT_START
{
NOP                                                

main_loop:                                        
WAIT 0                                            
IF HAS_PICKUP_BEEN_COLLECTED 1273
    PRINT_STRING_NOW "Casa a venda" 1000
ENDIF
GOTO main_loop                                    
}
SCRIPT_END

ta nb e basico mas acho que e td que precisa so tenho q entender como especificar meu "pickup handle" que vc disse, que eu n entendi mt bem

No exemplo do CREATE_PICKUP diz o formato:
(Returned) Pickup handle (Integer) (INT)
e fica:
store_to $PICKUP_INFO_HOSPITAL

No exemplo do HAS_PICKUP_BEEN_COLLECTED diz o formato:
Pickup handle (Integer) (INT)
e fica:
has_pickup_been_collected $BUY_ASSET_PICKUPS[0]

eu nao entendi o que e o "pickup handle" entao qualquer coisa depois disso eu fiquei tipo: han?
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 758
Reputação : 158
Desde : 07/03/2017
Localização : BH - MG
Link : https://gta-geek.blogspot.com.br/
Ver perfil do usuáriohttps://gta-geek.blogspot.com.br/
em Sab 21 Abr 2018, 15:30
Fiz um exemplo em lua, a diferença não é tão grande no visual do gta3script.


codigo:

Código:


function main()
 
 local scplayer = PLAYER_PED
 local x,y,z = getOffsetFromCharInWorldCoords(scplayer,0.0,5.0,0.0)
 local result, pickup_handle = createPickup(364,3,x,y,z)

    while true do
 if doesPickupExist(pickup_handle) then
 if hasPickupBeenCollected(pickup_handle) then
 printStringNow("coletado",3000)
 end
 end
 wait(40)
 end

end

resumindo, sempre que você cria algo, seja carro, ped, objeto,pickup e etc recebe um identificador daquela entidade criada.

no caso em lua como vê no codigo

local result, pickup_handle* = createPickup(364,3,x,y,z)

*handle

pode dizer que é um numero que representa o pickup no jogo, no caso $BUY_ASSET_PICKUPS é uma variável global, então o gta3script não tem como a usar

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 13
Reputação : 0
Desde : 07/02/2018
Ver perfil do usuário
em Seg 30 Abr 2018, 12:30
Mas meio que no caso eu não quero criar um pickup da casa liberada eu quero usar os pickups já existentes que é criado pelo próprio jogo, ai quando o CJ passasse em cima dele apareceria a msg que a casa ta liberada que nem nesse exemplo: https://imgur.com/a/OKX2j eu pensei q ia ser mais fácil de fzr, parece simples mas to me enrolando todo kkkk
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18203
Reputação : 384
Desde : 04/05/2012
Idade : 21
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com
em Qui 03 Maio 2018, 08:55
Aqui explica handles: http://brmodstudio.forumeiros.com/t255-10-criacao-de-atores

Esse valor que vamos receber é a HANDLE do nosso ator, é uma referencia a um objeto do jogo (Objeto é tudo desde atores a predios a texturas...), sempre que um opcode pedir um ator como parametro devemos enviar a handle desse ator.


http://brmodstudio.forumeiros.com/t203-indice-de-tutoriais-cleo-script-scm

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 13
Reputação : 0
Desde : 07/02/2018
Ver perfil do usuário
em Qui 03 Maio 2018, 18:19
Ajudou mas me serveria mlhr seu eu conseguisse pegar a handle do pickup mais proximo do CJ por exemplo, eu achei aki pelo forum essa postagem:http://brmodstudio.forumeiros.com/t7058-como-pegar-a-handle-de-um-pedestre-para-faer-operacoes-gta3script em que perguntam como pegar a handle de um pedestre pra fazer operacoes e o junior respondeu com esse codigo:

Código:
GET_CHAR_COORDINATES scplayer (x y z)
IF GET_RANDOM_CHAR_IN_SPHERE_NO_SAVE_RECURSIVE (x y z) 100.0 (FALSE, TRUE) char
    GOSUB apply
    WHILE GET_RANDOM_CHAR_IN_SPHERE_NO_SAVE_RECURSIVE (x y z) 100.0 (TRUE, TRUE) char
        GOSUB apply
    ENDWHILE
ENDIF

.......

apply:
// faz alguma coisa com o "char"
RETURN

Eu penso que teria que fzr +- a msm coisa pra pegar a handle de um pickup ja existe, que nao foi meu proprio mod quem criou, talvez diminuindo o raio da distancia pra 1 metro eu pudesse pegar o handle do pickup mais proximo do cj, ai eu poderia usar a handle no comando HAS_PICKUP_BEEN_COLECTED sem eu ter que criar o pickup, usando a handle do pickup mais proximo do cj(que ele esta em cima por conta da distancia de 1 metro)
@Fabio escreveu:HAS_PICKUP_BEEN_COLLECTED teste se pegou um pickup em específico, precisa enviar uma handle, não o modelo.
Conteúdo patrocinado
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum