Strona 27 z 33

Re: TinTin++, skrypty do arkadii v.1.0

: 28 lip 2015 00:47
autor: Luchtenger
Dzięki Ralandil, działa.

Re: TinTin++, skrypty do arkadii v.1.0

: 04 sie 2015 17:25
autor: Migr
Tak z ciekawości, w jaki sposób macie zrobiony trigger na wrogów? Coś w stylu #action {%i{ wrog1|wrog2}}, czy też łapiecie cały output #eventem {received line} i dalej szukacie regexpem linię z opisami postaci na lokacji?

Re: TinTin++, skrypty do arkadii v.1.0

: 01 wrz 2015 09:48
autor: Dorien
recived line dziala zawolno i przymula skrypty wtedy kiedy nie trzeba w trakcie walki kiedy najwiecej sie wywala dlatego u mnie jest tylko

Kod: Zaznacz cały

#ac {%0 przybyw{a|aja}{.| z | ze }} {
	i tutaj juz szukam..
}

Re: TinTin++, skrypty do arkadii v.1.0

: 28 wrz 2015 11:51
autor: Dorien
zgodnie z wieściami próbuję włączyć co nieco w GMCP ale chyba cos robie nie tak

Kod: Zaznacz cały

        #send {$IAC$SB$GMCP Core.Supports.Set [ "Char", "Room", "Objects" ] $IAC$SE\} 
po czyms takim powinienem miec conieco tutaj:

Kod: Zaznacz cały

#EVENT {IAC SB GMCP objects.nums IAC SE}{
	#var objects {%0};
}
niestety nic nie ma przy debug telenet on nawet ma ktos jakiś pomysł?

Re: TinTin++, skrypty do arkadii v.1.0

: 28 wrz 2015 16:19
autor: Dorien
znalazlem błąd, był w spacji prawidłowo powinno wygladać tak:

Kod: Zaznacz cały

#send {$IAC$SB$GMCPCore.Supports.Set [ "Char", "Room", "Objects" ]$IAC$SE\} 
co do samego GMCP to nie działa on zbyt dobrze,
- objects.data nie zawiera avatar które bylo w opisie
- objects.data zawiera avatar dopiero po odpytaniu, i posiada wartosc niezgodna z rzeczywistoscia (dla kobiety bez opisu mam wartosc true)
- objects.data nie wysyła aktualnej tablicy istot ale sama aktualizacje czyli mamy 3 osoby w lokacji i mamy 3 osoby w tablicy ktos wchodzi i mamy na lokacji 4 osoby, a w tablicy jedną nowa.
- obejrzyj ob123 nie działa.
- object.data nie jest za każdym razem przesyłane, nie jest przesyłane w przypadku pustego pokoju lub gdy szybko zmienimy otoczenie czyli np jest w pokoju 3 osoby, wychodzimy do pustego pokoju i mamy zaktualizowany tylko objects.nums a objects.data pozostaje bez zmian.
- messages type comm i emotes działa ok czysty txt jest w kolumnie text, natomiast dla commbat text jest pusty a jego zawartość jest wywalana do consoli.

Re: TinTin++, skrypty do arkadii v.1.0

: 28 wrz 2015 18:07
autor: Rafgart
Objects.data zawiera zmieniajace sie parametry, liste postaci zawiera Objects.nums. Po wejsciu do pustego pokoju dostaniesz tylko Objects.num z twoja postacia, bo zmienila sie lista postaci, a parametry nie.
Dane sa wysylane z minimalnym opoznieniem w celu ich buforowania i ograniczenia mozliwosci wykorzystania ich np do autopogoni. Dlatego jak szybko przebiegniesz przez lokacje, to nic nie dostaniesz.
Avatar jest znacznikiem twojej postaci. Jako ze jest to niezmienne, to nie dostaniesz go w kolejnych pakietach objects.data. Odpytanie muda przesyla wszystkie dane, wiec tam bedzie.
Nie ob123 tylko ob_123.

Re: TinTin++, skrypty do arkadii v.1.0

: 28 wrz 2015 22:56
autor: Dorien
i wszystko jasne :), dzięki

Re: TinTin++, skrypty do arkadii v.1.0

: 04 paź 2015 11:11
autor: Migr
Wymyślił ktoś lepszy sposób na obsługę "objects" z gmcp, niż ten podany poniżej? Całość jest ciągle pozbawiona wodotrysków i wyświetla kondycję w oknie konsoli na Linuxie z odpalonym netcatem.

Kod: Zaznacz cały

#event {IAC SB GMCP objects.nums IAC SE} 
{
#var {obnu} {%0};
#forall {$obda2[]} 
 {
 #list {obnu} find {&0} {vfob};
 #if {"$vfob" == "0"} 
  {
  #unvar {obda2[&0]}
  }
 };
_gmcp
}

#event {IAC SB GMCP objects.data IAC SE} 
{
#var {obda} {%0};
#list {numwrog} clear;
#list {nwrog} clear;
#foreach {$obda[]} {vob} 
 {
 #forall {$obda[$vob][]} 
  {
  #var {obda2[$vob][&0]} {$obda[$vob][&0]};
  }
 };
_gmcp
}

#alias {_gmcp} 
{
#foreach {$obda2[]} {fod} 
 {
 #if {"$obda2[$fod][avatar]" == "true"} 
  {
  #var {obda2[$fod][desc]} {Ty}
  };
 #if {"$obda2[$fod][team]" == "false"} 
  {
  #list {numwrog} add {$fod};
  #var {obda2[$fod][nr]} {(&{numwrog[]})};
  }; 
 #if {"$obda2[$fod][attack_num]" != "false"} 
  {
  #list {nwrog[${obda2[$fod][attack_num]}]} add {$obda2[$fod][desc]};
  };
 };
#gmcp #send {\\\033c};
#forall {$obda2[]} 
 {
 #if {"$nwrog[&0]" == "" && "$obda2[&0][avatar]" == "true"} 
  {
  #gmcp {#send {\033[1;34m@fgmhp{$obda2[&0][hp]} Ty}};
  };
 #elseif {"$nwrog[&0]" != "" && "$obda2[&0][avatar]" == "true"}
  {
  #gmcp {#send {\033[1;34m@fgmhp{$obda2[&0][hp]} Ty \033[1;31m<-&nwrog[&0][%*]- $nwrog[&0][%*]}}
  };
 #elseif {"$nwrog[&0]" == "" && "$obda2[&0][team]" == "true"} 
  {
  #gmcp {#send {\033[1;34m@fgmhp{$obda2[&0][hp]}@fzas{$obda2[&0][desc]} $obda2[&0][desc]}};
  };
 #elseif {"$nwrog[&0]" == "" && "$obda2[&0][team]" == "false"} 
  {
  #gmcp {#send {\033[1;31m@fgmhp{$obda2[&0][hp]} $obda2[&0][nr] $obda2[&0][desc]}}
  };
 #elseif {"$nwrog[&0]" != "" && "$obda2[&0][team]" == "true"}
  {
  #gmcp {#send {\033[1;34m@fgmhp{$obda2[&0][hp]}@fzas{$obda2[&0][desc]} $obda2[&0][desc] \033[1;31m<-&nwrog[&0][%*]- $nwrog[&0][%*]}}
  };
 #elseif {"$nwrog[&0]" != "" && "$obda2[&0][team]" == "false"}
  {
  #gmcp {#send {\033[1;31m@fgmhp{$obda2[&0][hp]} $obda2[&0][nr] $obda2[&0][desc] \033[1;34m<-&nwrog[&0][%*]- $nwrog[&0][%*]}}
  };
 };
}

Re: TinTin++, skrypty do arkadii v.1.0

: 08 lip 2016 14:52
autor: Dorien
Wiecie może czy w terminalu (tt/tf) można zrobić w jakiś sposób klikalny event ? tak jak zrobil to Cedrin w zmudzie? napewno jest to możliwe bo inne aplikacje terminalowe obsługują myszkę, pytanie czy komuś udało się to zaskryptować?

D.

Re: TinTin++, skrypty do arkadii v.1.0

: 24 lip 2016 21:37
autor: Muli
Nie mam teraz na to zbyt wiele czasu, ale z tego co widzialem najszybciej da sie to zrobic w Terminatorze piszac odpowiedni plugin. Cos w stylu kontekstowego menu za pomoca ktorego wysylasz komende netcatem do glownego okna. Kombinowalbym w ten sposob.