der kann rechnen?!?!?!

» Siedler Map Source Forum » Siedler DEdK Script Forum » der kann rechnen?!?!?!

Seiten: 1

Ghoul
#1
02.01.2015 15:36
Beiträge: 284

der kann rechnen?!?!?!

Hätte nie gedacht, das der Editor auch ohne Zusatzfunktionen problemlos rechnen kann. Brauchte das für eine Map, die bald erscheint, und es läuft ;D
so werde ich das nicht benutzen, habs ein wenig modifiziert, um zu sehen, ob er das auch kann. Und ja, wirklich erstaunend

function Vorgabe()
Schatzmenge = 0
counter = 0
end
function SchatzmengeAnzeige()
Message("Ihr habt bereits "..Schatzmenge.." Schatzpunkte erhalten.")
StartSimpleJob("UndWieder")
StartSimpleJob("Counter")
return true
  end
function UndWieder()
if ( Schatzmenge >= 10 )and ( counter == 20 * counter * n/4 )  then
SchatzmengeAnzeige()
for n = x,2*x+1 do
x = counter
return true
end
end
end

function Counter()
if counter <= 3000 then
counter = counter + 1
if counter == 3000 then
return true
end
end
end



Da tuen sich mir neue Möglichkeiten auf ;D
Hätte nicht gedacht, das auch rechnen null problemo ist
Ihr könnt ja mal schreiben, was ihr denkt, was passiert

Zedeg
#2
02.01.2015 17:18
Beiträge: 428

Zitat von Wikipedia:
Ein Computer ist ein Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.


Zitat von Ghoul:
der kann rechnen?!?!?!

Hätte nie gedacht, das der Editor auch ohne Zusatzfunktionen problemlos rechnen kann.
...
Hätte nicht gedacht, das auch rechnen null problemo ist



Ähh... was hast denn du gedacht, was ein Computer macht?

Edit: Und das funktioniert korrekt.

function DVS_Suppliers_GetAllGoodsOfType(_goods, _type, _useFactors)
	assert(type(_goods) == "string", "Suppliers_GetAllGoodsOfType:ERROR! Goods must be a string!")
	assert( type(_type) == "number", "Suppliers_GetAllGoodsOfType:ERROR! Type must be a number!")
	local amount = 0
	for v, w in pairs(DVS_SuppliersMemory.Suppliers) do
		if DVS_SuppliersMemory.Suppliers[v].Activated then
			if DVS_SuppliersMemory.Suppliers[v].Type == _type then
				if _useFactors then
					if _type == SUPPLIER_PORT then
						local id = DVS_SuppliersMemory.Suppliers[v].Id
						amount = math.round(amount-(DVS_SuppliersMemory.Suppliers[v].Goods[_goods]*(DVS_Diplomacy_GetReputationPoints(id)/100+0.15)))
					elseif _type == SUPPLIER_HUNTER then
						local factor = DVS_SuppliersMemory.Factor[Month]
						amount = math.round(amount-(DVS_SuppliersMemory.Suppliers[v].Goods[_goods]*factor))
					end
				else
					amount = math.round(amount-DVS_SuppliersMemory.Suppliers[v].Goods[_goods])
				end
			end
		end
	end
	return amount
end



____________________
Journalisten erkundigen sich bei Wissenschaftlern meist nicht nach Grundlagen, sondern eher nach Ergebnissen und Folgerungen. Das erklärt womöglich auch, warum sich Forschungsberichte in den Medien so häufig als feststehende Erkenntnisse lesen, nicht aber als Ideen, Entdeckungen oder Indizien, um die es sich genau genommen in den meisten Fällen handelt. -Axel Bojowski

Dieser Beitrag wurde von Zedeg am 02.01.2015 um 17:25 editiert.

bobby
#3
03.01.2015 19:03
Beiträge: 393

Zitat von Ghoul:
Ihr könnt ja mal schreiben, was ihr denkt, was passiert


Ganz einfach: Du bekommst einen fetten Error sobald die Funktion UndWieder aufgerufen wird.
Es sei denn das die Variablen "n" und "x" sind global definiert.

Ja ein Computer kann ziemlich gut rechnen und ich würd dir noch empfehlen immer schön einzurücken, so bewahrst du dir immer den Überblick:

function Vorgabe()
  Schatzmenge = 0
  counter = 0
end

function SchatzmengeAnzeige()
  Message("Ihr habt bereits "..Schatzmenge.." Schatzpunkte erhalten.")
  StartSimpleJob("UndWieder")
  StartSimpleJob("Counter")
  return true
end

function UndWieder()
  if ( Schatzmenge >= 10 ) and ( counter == 20 * counter * n/4 )  then
    SchatzmengeAnzeige()
    for n = x, 2 * x + 1 do
      x = counter
      return true
    end
  end
end

function Counter()
  if counter <= 3000 then
    counter = counter + 1
    if counter == 3000 then
      return true
    end
  end
end



____________________
Tools und Verbesserungen für Siedler: settlers.pro

Neues:
Cutscene Editor
LuaDebugger v0.5.2

Seiten: 1

SiteEngine v1.5.0 by nevermind, ©2005-2007
Design by SpiderFive (www.siedler-games.de) - English translation by juja

Impressum