Scripts...

Forgotten Battles, Ace Expansion Pack, Pacific Fighters, 1946 e Cliffs of Dover. Dúvidas, dicas, novidades e debates.
Post Reply
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Scripts...

Post by 21_Sokol1 »

Na campanha KG54 Ju88 do Piper Kiev - devido ao fato do scoreboard do CloD solenemente ignorar
os bomber - o máximo que consegue, se acertou alguma coisa, é ao final da missão um

"Her Lieutnant, you have successfully completed the task."

:?:

Bom, para deixar a coisa menos vaga, consegui fazer um script funcionar:

Code: Select all

using System;
using maddox.game;
using maddox.game.world;
using maddox.GP;

public class Mission : AMission 
{

    AiActor a1;
    AiAircraft airc1;

    public override void OnBattleStarted() 
	{
        base.OnBattleStarted();
        a1 = GamePlay.gpActorByName("0:BoB_LW_KG54_I.100");
        if (a1 == null) 
		{
            GamePlay.gpLogServer(null, "SCRIPT ERROR: Aircraft not found\n", new object[] { });
        }
        airc1 = (AiAircraft)a1;
     }

    public override void OnTrigger(int missionNumber, string shortName, bool active) 
       {
           if ("trigger01".Equals(shortName) && active)
	   GamePlay.gpHUDLogCenter("Waist gunner: Observing impacts and near miss.");	  
	  }
 	}     
}
O "trigger01" é disparado se uma % do alvo for destruida.

Se disparado, aparece uma mensagem em amarelo no meio da tela, a lá il-2 véio:

Waist gunner: Observing impacts and near miss. :P

Agora estou tentando melhorar o sistema, sem usar a mensagens em amarelo, ao invez disso usando as mensages de rádio do jogo, mas ainda não consegui ligar o script ao trigger...

A verdade é que o CloD é muito mais bugado :lol: do que se possa pensar, coisas simples, como uma mensagem de rádio pode funcionar ou não.:P

Por exemplo, caso do pedir permissão para decolar, aparece na tela um

Takeoff_denied (1)

Mas deveria haver uma mensagem de voz e um texto sem o _, isso ai é apenas o nome da mensagem, no caso bugada...

Bom, a parte do script, que já funciona por tempo, é essa:

Code: Select all

            {
            double initTime = 0.0;
            Timeout(initTime += 5.0, () =>
            airc1.SayToGroup(airc1.AirGroup(), "It_is_the waist gunner");
            });

            Timeout(initTime += 5.0, () =>
            {
                airc1.SayToGroup(airc1.AirGroup(), "Target_in_Fire_Direct_hit");
            });
    
Assim, ao invéz do texto amarelo no meio da tela (a lá il-2'46) havera uma mensagem de rádio, e texto azul na janela de dialogos, se habilitada.

"It is the waist gunner.... Target in fire, direct hit".

Usando um segundo trigger, um PassThrought condicional (se o trigger1 disparar esse segundo trigger é desabilitado) o waist gunner diz:

"It is the waist gunner.... Near miss". :)

A 'nhaca com scrips é que além de complicado, um { ou uma , fora do lugar desarma o trigger, e quem entende disso não gosta de dar dicas, igual no LINUX. :P

Voce pergunta alguma coisa e te respondem pela metade, como se supondo que voce é PHD no assunto...

BTW - O Salmo apagou todos os scripts que ele havia postado na 1C, SimHQ e ATAG ao longo dos últimos 3 anos... :?:

(1) No caso do "takeoff_denied" o que aconteçe é que várias mensagens estão bugadas (novidade...), seus arquivos tem 5kb ou menos, por isso não reproduzem.
Por isso algumas "conversas" de rádio são inteligíveis, pois falta parte do dialogo.

Resolvi isso apagando esse arquivo e copiando o "Negative1" e renomeando para "takeoff_denied",
assim pelo menos se ouve alguma coisa. :)

Da para importar mensagens do il-2 véio, convertendo em .ogg, mas a pronuncia e sotaque são bem diferentes...

Sokol1
Last edited by 21_Sokol1 on 06 Dec 2013 12:52, edited 3 times in total.
User avatar
28_Condor
Veterano
Veterano
Posts: 11406
Joined: 23 Dec 2003 21:00
Location: São Paulo/SP

Re: Scrips...

Post by 28_Condor »

S!

Por falar nisso, o script que ele te deu aqui funciona?

http://theairtacticalassaultgroup.com/f ... php?t=4641



SP!
[b]Eu confio no povo brasileiro. Voto facultativo já no Brasil![/b]
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: Scrips...

Post by 21_Sokol1 »

Não, na verdade esse script que ele postou é um "exemplo de script"... falta alguma coisa ai no meio. :^)

:lol:

Só não testei aquele último, que fica monitorando aviões em vôo, achei muita "bala para matar uma formiga".

O jeito é aprender scripts na marra, no Bo$ sera mais "cabeludo" ainda.

Sokol1
21_Sokol1
Veterano
Veterano
Posts: 15493
Joined: 01 Aug 2003 21:00
Location: Uberaba-MG

Re: Scripts...

Post by 21_Sokol1 »

21_Sokol1 wrote: Agora estou tentando melhorar o sistema, sem usar a mensagens em amarelo, ao invez disso usando as mensages de rádio do jogo, mas ainda não consegui ligar o script ao trigger...
Bahhh, até quando funciona o négócio é confuso. :rofl:

Na verdade meu trigger/script estava OK, acontece que usei a mensagem

"Target_in_fire-Direct-hit"

e esperar ouvir/ler isso (il-2'46).

Como a missão em que testei é dos alemães entedi bulufas o que o gunner falou, e muito menos
o que escrevou, pois no momento havia também comunicação do lider da esquadrilha, tudo misturado.

Acontece que ele diz é "Jolly good, that took care of him!". :P

Tive que testar com um Blenhneim para saber... |(

Image

:lol:

"Piece of Cacke!".

Sokol1
Post Reply