- LightVeloxDesigner - Intermediário
- Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 19
Localização : Rio Grande do Sul - Brasil
Bem, eu estou fazendo o JobWorker so que eu to trabalhando num script em que o ped tem que ir até tal local(caminhando mesmo, lentamente) se abaixar, ficar um tempo ali depois se alevantar e voltar, o problema é que eu não consigo verificar se ele terminou ou não a sequence_task, eu tentei usar "GET_SEQUENCE_PROGRESS" mas não importa o quanto ele fez esse opcode sempre retorna o valor -1
______________________________
Se eu te ajudei/fui útil a você clique no


- Spoiler:
- isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
Procurei rapidamente aqui e não achei, mais tarde procuro com mais calma. ;-;
______________________________

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'
Eu acho que esse GET_SEQUENCE_PROGRESS tem um nome meio errado...
Ele só parece funcionar com a tarefa de ID 1560, na qual não sei qual é .
Não dá para simplesmente checar uma coisa específica? Ou seja, a posição que ele está, se está agachado ou não etc.
Ele só parece funcionar com a tarefa de ID 1560, na qual não sei qual é .
Não dá para simplesmente checar uma coisa específica? Ou seja, a posição que ele está, se está agachado ou não etc.
- LightVeloxDesigner - Intermediário
- Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 19
Localização : Rio Grande do Sul - Brasil
;-;@Fabio escreveu:Procurei rapidamente aqui e não achei, mais tarde procuro com mais calma. ;-;
Problema e que a ia do jogo é meio retardada, as vezes o cara demora séculos pra dar uma simples volta no carro ou ele simplesmente "trava" e se não tiver um timer pra teleportar ele fica "freezado", mas vou ver se consigo detectar a posição dele, pra saber se ele voltou, problema que se tiver qualquer obstaculo no caminho ja era@Junior_Djjr escreveu:Eu acho que esse GET_SEQUENCE_PROGRESS tem um nome meio errado...
Ele só parece funcionar com a tarefa de ID 1560, na qual não sei qual é .
Não dá para simplesmente checar uma coisa específica? Ou seja, a posição que ele está, se está agachado ou não etc.
______________________________
Se eu te ajudei/fui útil a você clique no


- Spoiler:
- isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
- Kevin PrestesScripter CLEO - Avançado
- Mensagens : 1955
Reputação : 26
Desde : 30/05/2013
Localização : Estância Velha - RS
Para mim o GET_SEQUENCE_PROGRESS está funcionando normalmente... Tente fazer assim, manualmente:
- Código:
CLEO_CALL GetSequenceProgress 0 (char) prog
{
GetSequenceProgress:
LVAR_INT char // in
GET_PED_POINTER (char) char
char += 0x47C // CPed->CPedIntelligence
READ_MEMORY (char 4 0) char
char += 0x10 // CPedIntelligence.CTaskManager->m_primaryTasks[3]
READ_MEMORY (char 4 0) char
IF char > 0
char += 0x10
READ_MEMORY (char 4 0) char
ELSE
char = -1
ENDIF
//char++
CLEO_RETURN 0 (char)
}
- LightVeloxDesigner - Intermediário
- Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 19
Localização : Rio Grande do Sul - Brasil
Nossa obrigado mesmo, funciona que é uma beleza, so não entendi oque é o "0x10" no código ;-; quer dizer até entendi mais ou menos mas não sei que thread é esse n tem na database(o 0x47c eu sei que é o handle do char)
EDIT:
so deu um problema com esse code:
EDIT:
so deu um problema com esse code:
- Código:
[size=14]GET_OFFSET_FROM_CAR_IN_WORLD_COORDS car -1.5 0.0 0.0 xx yy zz
OPEN_SEQUENCE_TASK task
TASK_GO_STRAIGHT_TO_COORD -1 xx yy zz 4 -1
TASK_ACHIEVE_HEADING -1 264.0
TASK_LOOK_ABOUT -1 2000
TASK_SAY -1 129
TASK_PAUSE -1 2500
TASK_GO_STRAIGHT_TO_COORD -1 1872.1408 -1857.5594 13.5787 4 -1
TASK_ACHIEVE_HEADING -1 264.0
TASK_PLAY_ANIM char "dealer_idle" "DEALER" 4.0 1 0 0 0 -1
CLOSE_SEQUENCE_TASK task
PERFORM_SEQUENCE_TASK char task
CLEAR_SEQUENCE_TASK task
progress = 0
WHILE progress < 5
CLEO_CALL GetSequenceProgress 0 (char) progress
PRINT_FORMATTED_NOW "Prog: %i" 2000 progress
IF IS_CHAR_DEAD char
MARK_CHAR_AS_NO_LONGER_NEEDED char
PRINT_BIG M_FAIL 4000 1
created = 0
GOSUB JobReset
ENDIF
WAIT 0
ENDWHILE[/size]
______________________________
Se eu te ajudei/fui útil a você clique no


- Spoiler:
- isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
- Kevin PrestesScripter CLEO - Avançado
- Mensagens : 1955
Reputação : 26
Desde : 30/05/2013
Localização : Estância Velha - RS
Thread é algo bem diferente. Dê uma olhada no Glossário aqui: 2. Preparações@LightVelox escreveu:não sei que thread é esse
Está dizendo nos comentários o que é cada coisa. O primeiro 0x10 pega um ponteiro (acredito que para um CTaskComplexSequence) que está@LightVelox escreveu:so não entendi oque é o "0x10" no código
dentro do CTaskManager, que está dentro do CPedIntelligence (que foi pego no 0x47C)...
O segundo 0x10 é o offset para a lista de eventos (CTaskList?) dentro do CTaskComplexSequence.
Não. É o ponteiro para o CPedIntelligence, está dizendo no comentário...@LightVelox escreveu:o 0x47c eu sei que é o handle do char
Para mim está funcionando normal... Tanto a função, quanto o opcode. E perceba que você utilizou uma variável no TASK_PLAY_ANIM, e não o -1.
- LightVeloxDesigner - Intermediário
- Mensagens : 287
Reputação : 48
Desde : 27/03/2016
Idade : 19
Localização : Rio Grande do Sul - Brasil
Eu que não é um thread mas eu costuma dar nomes comuns a coisas similares, tipo eu sei que o 0x47c não é precisamente o "handle" do char mas é sim ligado a ele(o ped) pelo ponteiro do CPedIntelligence, o 0x10 no caso eu não tinha entendido se era um ponteiro ou uma "array"(não literalmente) pcs do "if char > 0" mas agora entendi que na vdd isso é so pra checagem kksksksk(o > 0 no caso) eu consegui consertar, o problema tava no "task_say" por algum motivo, eu so tirei ele e funcionou normal o codigo, sla pq
______________________________
Se eu te ajudei/fui útil a você clique no


- Spoiler:
- isso vai aumentar um numero inútil que n serve pra porra nenhuma mas que aumenta minha auto-estima a continuar :v
Falando mais certinho: offset para o ponteiro.@Kevin Prestes escreveu:Não. É o ponteiro para o CPedIntelligence, está dizendo no comentário...@LightVelox escreveu:o 0x47c eu sei que é o handle do char
- Kevin PrestesScripter CLEO - Avançado
- Mensagens : 1955
Reputação : 26
Desde : 30/05/2013
Localização : Estância Velha - RS
Acho que é bom ressaltar que isso é um offset mesmo, ele parece estar se confundindo.@Junior_Djjr escreveu:Falando mais certinho: offset para o ponteiro.
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum
|
|