Autor Wątek: Aplikacja DomowyKokpit  (Przeczytany 62144 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #285 dnia: Kwietnia 07, 2011, 20:30:08 »
Wielkie dzięki Codeking za szybką pomoc. Dopiero odpisuje bo mnie grypa połamała i nie byłem w stanie nawet logicznie myśleć. Już wcześniej taki sam skrypt napisałem jak mi podałeś w odpowiedzi, ale to nie działa, znaczy działa, ale:  na sucho ( w test module jako jakaś tam wartość int) diody śmigają zapalają się i gasną - jak w zamiarach. Jak zmieniam zmienną wejściową na tą z fsdatainput to się reagują.  W okienku logowania HSC łączy się z simout i fsdatainput. W okienku logowania z FSUIPC również wyświetla dane że HSC odczytuje wartość 028c jako 0 i po schowaniu kół również pokazuje 0. Sytuacja wskazuje na inne offsety do odczytu z FSX. A może ktoś inny miał podobny problem? Aha, samoloty testowane to default FSX. :005:

Odp: Aplikacja DomowyKokpit
« Odpowiedź #286 dnia: Kwietnia 08, 2011, 16:49:59 »
Aż wstyd się przyznać. Pomyliłem landing lights z landing gear lights. Teraz już wszystko działa jak powinno.  W HSC zauważyłem pewną sytuację, nie wiem czy ktoś się z tym już spotkał a mianowicie; kiedy kopiuje do schowka jakąś zmienna czasem nic nie kopiuje i w skrypcie wkleja poprzednie dane ze schowka. Na początku złościłem się na siebie że jestem nieuważny i zapominam kopiować, ale potem wyszło że bezpośrednio po skopiowaniu wkleiłem poprzedni schowek. Nie wiem czy to wina HSC czy windowsa. Mam jeszcze tylko pytanie odnośnie jednej sprawy. Jak ustawić aby diody w simoucie od razu się zapalały? Kiedy odpalam skrypt( dwie na przemian zapalające się diody) z landing lights, nic mi się nie świeci, a powinno. Dopiero po pierwszym przełączeniu zaczyna działać poprawnie. Czy powinienem do tego użyć funkcji GetBitState?

Odp: Aplikacja DomowyKokpit
« Odpowiedź #287 dnia: Kwietnia 08, 2011, 17:46:17 »
Wklej swój skrypt. Do landing lights nie trzeba używać GetBitState bo wartość offsetu 028c wynosi 0 gdy światła są zgaszone i <> 0 gdy są włączone (w dokumentacji FSUIPC nie ma nic o flagach bitowych w tym offsecie).

Odp: Aplikacja DomowyKokpit
« Odpowiedź #288 dnia: Kwietnia 10, 2011, 23:37:06 »
Oto mój skrypt:

script "landinglights"
{
variable $_028C
{
module = "FSDataInput";
id = "028C";
type = int;
direct = in;
}
variable $in_int_00
{
module = "TestModule";
id = "in:int_00";
type = int;
direct = in;
}
variable $COM8_led_021_004
{
module = "simOUT";
id = "COM8_led_021_004";
type = bool;
direct = out;
}
variable $COM8_led_021_032
{
module = "simOUT";
id = "COM8_led_021_032";
type = bool;
direct = out;
}
/*variable_changed $in_int_00
{if ($in_int_00 == 0)

 {$COM8_led_021_004 = true;
  $COM8_led_021_032 = false;}

else

 {$COM8_led_021_004 = false;
  $COM8_led_021_032 = true;}
}*/


variable_changed $_028C
{if ($_028C == 0)

 {$COM8_led_021_004 = false;
  $COM8_led_021_032 = true;}

else

 {$COM8_led_021_004 = true;
  $COM8_led_021_032 = false;}
}}

[code]

Odp: Aplikacja DomowyKokpit
« Odpowiedź #289 dnia: Kwietnia 11, 2011, 19:07:26 »
Dodaj do skryptu kawałek:
input_started
{
ForceSignal($_028C);
}

Wymusi to wygenerowanie zdarzenia dla zmiennej $_028C, w rezultacie zapalą się odpowiednie diody na starcie.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #290 dnia: Kwietnia 15, 2011, 00:16:45 »
Czy polecenie forcesignal można stosować w dowolnym miejscu skryptu? Bardzo by mi się przydało np. po wykonaniu testu kontrolek.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #291 dnia: Kwietnia 15, 2011, 10:04:03 »
Ja dalem zaraz po variable_changed dziala supeur.Dzieki za pomoc Codeking! Shopik Musisz potestowac.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #292 dnia: Kwietnia 15, 2011, 12:33:52 »
Przepraszam za mojego poprzedniego posta. Już usypiałem i niepotrzebnie o to pytałem - przetestowanie zajęłoby tyle samo czasu co napisanie pytanka. Sorry

Odp: Aplikacja DomowyKokpit
« Odpowiedź #293 dnia: Kwietnia 19, 2011, 08:26:03 »
Codeking mam do ciebie prośbą,czy możesz przeczytać ten wątek http://www.il2forum.pl/index.php/topic,14042.0.html
Pytanie dotyczy HSC.U mnie HSC widzi tylko jeden kontroler gier o nazwie MP71 (jest to MJoy tylko z inną nazwą).Ponieważ SVMapper widzi tylko 4 kontrolery to byłem zmuszony zrobić skrypt w HSC dla tego niewidzianego czyli dla MP71.
W HSC nie są wodziane inne kontrolery w tym ramki MFD.Czemu jest widziany tylko ten jeden jest dla mnie zagadką.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #294 dnia: Kwietnia 19, 2011, 15:18:37 »
Codeking pytanie już jest nieaktualne.Zapomniałem o opcji konfiguracja.Wszystkie kontrolery są widziane w HSC.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #295 dnia: Sierpnia 22, 2011, 13:50:04 »
Zapytano mnie czy można zrealizować przy pomocy MJoya oraz przełącznika 3 pozycyjnego, stabilnego, jednosekcyjnego 3 funkcje dwie stabilne typu toggle switch oraz jedna typu pushbutton. Po przemyśleniu problemu doszedłem do wniosku, że za pomocą SVMappera tego nie można zrobić, ale można to zrealizować za pomocą HSC. Pokażę to na przykładzie, jednocześnie mam prośbę do codeking o sprawdzenie czy jest to możliwe.
Załóżmy, że podpieliśmy środek przełącznika do wiersza A oraz pozostałe styki do kolumn 1 oraz 2. To ozn. przycisk 000 oraz 001.
Uwaga:
w MJoyu liczymy od 1 do 112 w HSC od 000 do 111.
fragment skryptu
variable_changed $MJ16_przycisk_000
{
if ($MJ16_przycisk_000)
   {
   //podwozie wypuszczone
   KeyboardOutput:SendKeysDown("%g");   
   }
else
   {
   //podwozie chowane
   KeyboardOutput:SendKeysUp("+g");
   }
}
variable_changed $MJ16_przycisk_001
{
if ($MJ16_przycisk_001)
   {
   //HUD Warning RES
   KeyboardOutput:SendKeysDown("+^%w");   
   }
}

Ma to działać w następujący sposób. Dźwignia przełącznika w poz górnej chowane podwozie, w pozycji środkowej podwozie wypuszczane, w pozycji dolnej HUD Warning RES (ma działać jak przycisk), cofnięcie z dolnej do środkowej nic nie powoduje.
Ponieważ nie jestem pewnien czy to dobrze zrobiłem mam prośbe do codeking o korecję.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #296 dnia: Sierpnia 22, 2011, 17:57:36 »
Kod jest jak najbardziej OK, natomiast czy o to chodziło pytającej osobie, tego nie wiem :) Ale ogólnie to tak właśnie wygląda realizacja toggle switch i pushbutton. Wszystko rozbija się o to czy reagujemy tylko na zdarzenie naciśnięcia przycisku czy także na zdarzenie zwolnienia.

Offline Flanker

  • 13 WELT
  • *
Odp: Aplikacja DomowyKokpit
« Odpowiedź #297 dnia: Sierpnia 22, 2011, 18:12:48 »
Już tłumaczę o co chodziło tej osobie ;)

Potrzebuję zrealizować taki przełącznik jak drift c/o w przypadku ICP do F-16. Jednak nie znalazłem miejsca gdzie była by dostępna taka wersja przełącznika 1-0-(1) odpowiednio dużego rozmiaru. Stąd konieczność zastosowania przełącznika 1-0-1, obustronnie stabilnego, gdzie dolna pozycja nie będzie odbijała, ale będę ją wyłączał samemu. Chodzi tylko o to by dolna pozycja przełącznika symulowała pracę przycisku czyli wysyła klawisz klawiatury stale wciśnięty nie zaś krótki sygnał przy przełączaniu.

Chciałem to zrealizować właśnie na przełączniku 1-0-1 dwusekcyjnym, jedną sekcję podpiąć pod toggle na Mjoy (I-J) a drugą na któryś z pushbuttonów (A-H). Niestety projektując panel nie przewidziałem że przełącznik dwusekcyjny jest nieco szerszy niż jednosekcyjny i jego korpus nie zmieści się. Stąd muszę zastosować przełącznik obustronnie stabilny jednosekcyjny. W tym miejscu pojawia się problem gdyż nie mogę połączyć mas wierszy A-H z I-J. Stąd Mjoy musi generować dwa przełączniki toggle, a dodatkowy soft "przerabiać" jednego toggle na pushbutton.

Dziękuję bardzo vito_zm, za zaangażowanie i pomoc w rozwiązaniu problemu.

Mam jeszcze jedno pytanie, trochę z lenistwa gdyż powinienem się zapoznać z wątkiem - czy powyższa aplikacja obsługuje też osie ? Mam na myśli skrypt który będzie generował naciśnięcie klawisza klawiatury wtedy, gdy odpowiednia z osi będzie przechodziła przez dany zakres. Obrazowo: ustawiam w programie że przejście przez punkt wyznaczający 10% na osi przepustnicy ma generować naciśnięcie przycisku "delete". Przesuwam przepustnicę z położenia 0 % na 20% i chciałbym żeby w trakcie przejścia przez pozycję 10% był wygenerowany sygnał "delete".

Pozdrawiam.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #298 dnia: Sierpnia 22, 2011, 18:27:12 »
Jest obsługa osi. Trzeba jednak samemu "oskryptować" sobie te zakresy. W planach jest zrobienie opcji dzielenia zakresu osi na podzakresy i np. traktowanie przez HSC podzakresu jak przycisku (wartość w zakresu - sygnał ON, wartość poza zakresem - sygnał OFF).

Ostatni wpis na http://homesimcockpit.com/ jest właśnie o dzieleniu osi, aczkolwiek może być potrzebne zapisywanie  informacji o ostatnim wysłanym rozkazie tak by nie wysyłać wielokrotnie przy przesuwaniu osi (gdy wartość cały czas znajduje się w naszym podzakresem).

Odp: Aplikacja DomowyKokpit
« Odpowiedź #299 dnia: Sierpnia 23, 2011, 06:34:46 »
Cytuj
ustawiam w programie że przejście przez punkt wyznaczający 10% na osi przepustnicy ma generować naciśnięcie przycisku "delete".
Z ciekawości mam pytanie. Jeśli mam możliwość generowania informacji o zakresach np. przepustnicy to jak tę informację zaprezentować, zapalać LED-y? Co to daje w praktyce, mamy informację pośrednią ma wskaźniku prędkości. Mamy też mechaniczne ustawienia pierścieni na przepustnicy dające "kliknięcie".