Forum

> > CS2D > Scripts > Sammelthread/FAQ zu Lua & Editor
Forums overviewCS2D overview Scripts overviewLog in to reply

German Sammelthread/FAQ zu Lua & Editor

1,111 replies
Page
To the start Previous 1 233 34 3555 56 Next To the start

old Re: Sammelthread/FAQ zu Lua & Editor

DC
Admin Off Offline

Quote
... wie sieht dein script denn jetzt aus? vielleicht x und y vertauscht? wenn was nicht funktioniert lässt man sich einfach mal die besagten variablen ausgeben.
in diesem fall x und y
1
print(x); print(y);
vor der parse("spawnitem .... zeile

old ?

BloodShock
User Off Offline

Quote
das versteh ich grad nicht sry ...

also mein script sieht jetzt so aus:


1
2
3
4
5
6
7
addhook("projectile", "snowballthrow");
	function snowballthrow(id,weapon,x,y)
	if(weapon == 75) then
		parse("spawnitem "..weapon.." "..x.." "..y)
		return 1
	end
end

hoffe kannst mir helfen^^ cookie

old Re: Sammelthread/FAQ zu Lua & Editor

ohaz
User Off Offline

Quote
1
2
3
4
5
6
7
8
9
addhook("projectile", "snowballthrow");
     function snowballthrow(id,weapon,x,y)
     if(weapon == 75) then
	  print(x);
	  print(y);
          parse("spawnitem "..weapon.." "..x.." "..y)
          return 1
     end
end
Damit dir x und y in der Konsole angezeigt werden und du prüfen kansnt ob es überhaupt stimmt

old ...

BloodShock
User Off Offline

Quote
ok das habe ich jetzt eingefügt ABER es ist immer noch der selbe LUA ERROR.

old Re: Sammelthread/FAQ zu Lua & Editor

ohaz
User Off Offline

Quote
1
2
3
4
5
6
7
8
9
addhook("projectile", "snowballthrow");
     function snowballthrow(id,weapon,x,y)
     if(weapon == 75) then
	  print(x);
	  print(y);
          --parse("spawnitem "..weapon.." "..x.." "..y)
          return 1
     end
end
Einfach mal die Zeile auskommentiert.

old Re: Sammelthread/FAQ zu Lua & Editor

BloodShock
User Off Offline

Quote
thx erstmal

der error ist weg aber der schneeball kommt nicht wieder

da muss doch i.was nicht stimmen

der zeigt mir die genaue stelle wo der schneeball aufkommt aber es kommt halt kein neuer in der nähe

old Re: Sammelthread/FAQ zu Lua & Editor

ohaz
User Off Offline

Quote
Ja, der Schneeball soll da auch nicht wieder kommen, immerhin ist die Zeile auskommentiert
Und du meintest zu mir, du kennst dich mit Lua aus...

old Re: Sammelthread/FAQ zu Lua & Editor

Scaleopi
User Off Offline

Quote
Sag doch erstmal wo X und Y ist!Sollte jetzt in der Console stehen,nachdem der Snowball aufgeprallt ist.Möglicherweise liegt es auch an der Map?Hast du es mal mit einer anderen Map versucht?

old Re: Sammelthread/FAQ zu Lua & Editor

DC
Admin Off Offline

Quote
jap mitdenken ist angesagt. ipoleacs hats richtig erkannt. wir geben x und y aus um zu sehen was für werte sie haben und um sicher zu gehen, dass diese in der map liegen.

mir fällt gerade ein, dass du die werte vermutlich einfach durch 32 teilen musst, weil es wohl die pixelwerte sind, spawnitem aber die tilewerte braucht.

parse("spawnitem "..weapon.." "..(x/32).." "..(y/32))

old Re: Sammelthread/FAQ zu Lua & Editor

Scaleopi
User Off Offline

Quote
DC has written
mir fällt gerade ein, dass du die werte vermutlich einfach durch 32 teilen musst, weil es wohl die pixelwerte sind, spawnitem aber die tilewerte braucht.

parse("spawnitem "..weapon.." "..(x/32).." "..(y/32))

Ja,stimmt.Das ist der Fehler.Komisch das es niemandem eingefallen ist

old ^^

BloodShock
User Off Offline

Quote
Es klappt bis zu EINER stelle...


wenn ich gegen die wand werfe , ist der ball in der wand was kann man da machen ?
edited 1×, last 31.10.09 10:39:57 pm

old Re: Sammelthread/FAQ zu Lua & Editor

Scaleopi
User Off Offline

Quote
BloodShock has written
Es klappt bis zu EINER stelle...


wenn ich gegen die wand werfe , ist der ball in der wand was kann man da machen ?

Dagegen kann man leider nix machen,soweit ich weis.Brauchst also nicht auf eine Antwort zu warten.

old o_0

BloodShock
User Off Offline

Quote
schade...

in dem XKafe.net Football Server is das aber glaub ich anders ...

ich habs sogar nochmal ausprobiert....

hier: XKafe.net - Football 212.252.24.18:36965

old Re: Sammelthread/FAQ zu Lua & Editor

Scaleopi
User Off Offline

Quote
Hmm...Da hast du recht.Aber ich kann dir leider trortdem nicht helfen.Vielleicht wurde es für jede Wall manuell gecoded.Also z.B.
1
2
3
if (x==1 and y==1) then --Auf Tile 1/1 ist eine Wall
...
if (x==2 and y==2) then --Auf Tile 2/2 ist auch eine Wall
Und das für jede Wall.

old Re: Sammelthread/FAQ zu Lua & Editor

BloodShock
User Off Offline

Quote
sry ICH kann dir noch nicht helfen-.-

hab selber noch eine frage:

kann man z.B. beim 5classes script das so machen das 1 "Tank" nimmt und der dann nicht mehr im menü verfügbar ist ? (daraus würde folgen dass max 5 spieler auf dem server sein könnten)

wäre froh wenn jemand antwortet ob so etwas möglich ist oder nicht

danke
edited 2×, last 03.11.09 09:43:08 pm

old Items in CSV-Datei schreiben

Kiffer-Opa
User Off Offline

Quote
So. Hab mal ein Lua-Skript geschrieben, das alle Itemtypen und ihre Attribute (ID, Name, Schaden, Preis, usw.), in eine Tabelle schreibt. Diese wird in eine CSV-Datei geschrieben. Mit diesen Rohdaten kann man dann allerhand tolle Berechnungen mit Microsoft Excel oder OpenOffice.org oder wasweißich anstellen.

Die erzeugte Datei wird dann »itemlist.csv« lauten und wird im Unterverzeichnis »sys/lua« erzeugt. CSV-Dateien können z.B. von Microsoft Excel und OpenOffice.org importiert werden. Das Trennzeichen ist das Komma.

Das Skript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
file = assert(io.open("sys/lua/itemlist.csv","w+"))
file:write("")
file:close()

file = assert(io.open("sys/lua/itemlist.csv","a+"))

line = '"ID","name","slot","damage (no zoom)","damage (zoom level 1)","damage (zoom level 2)","rate of fire","reload time","ammo in magazine","total ammo","price","range","dispersion","recoil"'

file:write(line)

for i=0,100 do

	if(itemtype(i,"name") ~= false) then
		if(itemtype(i,"name") ~= "") then
			local line

			line = "\n"..i
			line = line..","..itemtype(i,"name")
			line = line..","..itemtype(i,"slot")		   -- 0 = slotless; 1,2,3,4,5 are slots
			line = line..","..itemtype(i,"dmg")		      -- damage (no zoom)
			line = line..","..itemtype(i,"dmg_z1")		   -- damage (zoom level 1 or secondary attack)
			line = line..","..itemtype(i,"dmg_z2")		   -- damage (zoom level 2)
			line = line..","..itemtype(i,"rate")		   -- time between 2 shots
			line = line..","..itemtype(i,"reload")		   -- reload time
			line = line..","..itemtype(i,"ammoin")		   -- magazine size
			line = line..","..itemtype(i,"ammo")		   -- total ammo
			line = line..","..itemtype(i,"price")		   -- price  in $
			line = line..","..itemtype(i,"range")		   -- range in pixels
			line = line..","..itemtype(i,"dispersion")   -- dispersion
			line = line..","..itemtype(i,"recoil")		   

			file:write(line)
		end
	end
end

file:close()

Anmerkungen:
> Bei Melee-Waffen bezeichnet »damage (zoom level 1)« den Schaden des Sekundärangriffs.
> Ich weiß nicht, welche Einheiten bei »rate of fire« und »reload time« verwendet werden. Es sind weder Sekunden noch Millisekunden. DC, könntest du bitte sagen, welche Einheiten bei »itemtype(id,"rate")« und »itemtype(id,"reload")« verwendet werden?
> Es werden natürlich die aktuellen Werte abgefragt. Wurde vom Server beispielsweise der Schaden der AK-47 geändert, wird nicht der Standardwert, sondern der vom Server festgelegte Schaden angezeigt.
Nachtrag 2: > lol, happycamper hatte wohl die gleiche Idee wie ich. Aber er hat HTML statt CSV verwendet und das kam dabei raus: http://www.tjoho.org/hc/misc/Items.html


------------------------------
Nachtrag:
@BloodShock:
Ja, es ist tatsächlich möglich, Menüpunkte rauszunehmen. Ausgrauen geht AFAIK nicht, aber man kann bestimmte Nummern (z.B. 2) unbelegt lassen. Dazu muss man einfach einen leeren String an der Stelle, wo der Button stehen würde, lassen.
1
menu("Titel","Button A,Button B, Button C")
würde so ein Menü erzeugen:
Titel
1 Button A
2 Button B
3 Button C

Um Button B rauszunehmen, muss du folgendes tun:
1
menu("Titel","Button A,,Button C")
Ergebnis:
Titel
1 Button A

3 Button C

Damit das flexibler ist, sollte man "Button B" in eine Variable schreiben und sie dann entsprechend setzen:
1
2
3
4
5
variablerbutton = "Button B"        -- gib dem Button einen Namen
if(irgendnebedingung) then         -- wenn false, bleibt der button, wenn wahr, verschwindet er
	variablerbutton = ""   -- der leere String lässt den Button verschwinden
end
menu("Titel","Button A,"..variablerbutton..",Button C")
In diesem Beispiel sind Button A und Button C fest und Button B taucht nur auf, wenn irgendnebedingung==false ist.

Natürlich kann man dasselbe Spielchen dann auch mit Button A und Button C machen, die Vorgehensweise ist hier genau dieselbe.

Ich hoffe, du hast es verstanden und kannst dieses Wissen nun auf dein Problem übertragen.
edited 3×, last 07.11.09 03:33:21 pm

old Re: Sammelthread/FAQ zu Lua & Editor

BloodShock
User Off Offline

Quote
joa...thx

wollt fragen wie denn dann die "irgendeinebedingung" wäre...?

also man hat das menu nimmt das 2 und ---> verschwindet...

und das :
1
2
3
sample.classes.class=initArray(32)
function sample.classes.classmenu(id)
	menu(id,"Select your Class,Tank|Armor+1(.......)

soll ich bei
1
menu(id [....]
also
1
menu("Titel","Button A,,Button C")
einfügen ?

old Hilfe!!!

justinlehnen
COMMUNITY BANNED Off Offline

Quote
brauche hilfe beim "classes" script:

i will das wenn ich die CT's andere klassen haben als die T's kann mir jemand helfen,bin nicht sehr gut mit "lua"
To the start Previous 1 233 34 3555 56 Next To the start
Log in to reply Scripts overviewCS2D overviewForums overview