Jump to content
Zum Start hinzufügen

Weitere Informationen

3D-Modellbahn Studio

Eine Vollbild-App auf Ihrem Startbildschirm mit Push-Benachrichtigungen und mehr.

So installieren Sie diese App auf iOS und iPadOS
  1. Tippen Sie auf das Teilen-Symbol in Safari
  2. Scrollen Sie durch das Menü und tippen Sie auf Zum Startbildschirm hinzufügen.
  3. Tippen Sie oben rechts auf Hinzufügen.
So installieren Sie diese App auf Android
  1. Tippen Sie auf das 3-Punkte-Menü (⋮) in der oberen rechten Ecke des Browsers.
  2. Tippen Sie auf Zum Startbildschirm hinzufügen oder App installieren.
  3. Bestätigen Sie durch Tippen auf Installieren.

Empfohlene Beiträge

Geschrieben

Hallo,

eigentlich ist es mehr ein Feature-Wunsch aber ich stelle es erst einmal zur allgemeinen Diskussion.

Die Ausgangslage:
Bild001.thumb.jpg.1591c5e8af733c8be659753a2952f176.jpg

Die Aufgabenstellung:
Die blauen Loks sollen immer vorwärts aus dem Depot kommen
Die roten Loks sollen die Fahrtrichtung beim Verlassen des Depots umkehren (vorwärts-rückwerts-vorwärts.....) (Schlagwort ""RiWe")
Bei Betätigung des Tasters: nächste (zufällige) Lok aus dem Depot entlassen

Der Versuchsaufbau:
Bild002.thumb.jpg.0ac8233f317ad17d23aa486628671ff2.jpg

Der Wunsch:
Die Aufgabenstellung mit einem Depot erfüllen.

Für 2 Depots habe ich diese Lösung:
Gleiskontakt wird betreten:

if vehicle.variables["RiWe"] then
  $("Depot 2-"):add(vehicle)
else
  $("Depot 2+"):add(vehicle)
end

Schalter wird betätigt:

local Dp=$("Depot 2+")
local Dm=$("Depot 2-")
local Liste={},{}
print(Dp.count,Dm.count)

if Dp.count>0 then
  for i=0,Dp.count-1 do
    table.insert(Liste,{Dp,i})
  end
end
if Dm.count>0 then
  for i=0,Dm.count-1 do
    table.insert(Liste,{Dm,i})
  end
end

if #Liste>0 then
  for i=1,#Liste do
  print("Liste",Liste[i][1].name,Liste[i][2])
  end
  local x=math.random(1,#Liste)
  print("Auswahl",Liste[x][1].name,Liste[x][2])
  print()
  Liste[x][1]:release(Liste[x][2],Dp)
else
print("Depots sind leer")
end

-----------------------------------------------------------------------------

Für ein Depot habe ich eine Wunschlösung:
Wenn man auf diesen Parameter des Depots in der EV zugreifen könnte...
Bild003.jpg.5e3022ca7456973f40e38a8a8054f9d5.jpg

... würde Gleiskontakt wird betreten so aussehen:

$("Depot 1"):add(vehicle)

Taster wird betätigt so
 

local function intable(t,x)
  for i,v in ipairs(t) do
    if v==x then
      return -1
    end
  end
  return 1
end

local Depot=$("Depot 1")
local riwe=Depot:getEntriesByKeyword("RiWe")
if #riwe>0 then
  local x=math.random(0,$("Depot 1").count-1)
  for i,v in ipairs(riwe) do
    print("Index riwe",v)
  end
  print("Depot:release("..x..","..intable(riwe,x)..")","<=Wunschaktion")
  print()
  -- noch keine Lösung mit einem Depot
else
  print("Depot 1 ist leer")
end

... die Wunschaktion wird derzeit nur als print-Ausgabe erzeugt...

Bild004.jpg.b34bfe37cae80d73d44c408952612d65.jpg

Dies wäre meine Diskussionsgrundlage.
Depotproblem01.mbp

Meinungen und Anregungen gerne.
(Hinweis: Die Loks sind nur exemplarisch... es können auch ganze Züge sein)

Gruß
EASY

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Push-Benachrichtigungen konfigurieren

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.