![]() |
![]() ![]() « Consul » 1467554220000
| 0 | ||
Masz Fpekal: tfm.exec.addPhysicObject(1,x,y,{type=0,restitution=0.2,friction=0.3,width=2,height=50,groundCollision=true}) |
![]() ![]() « Citoyen » 1467575400000
| 0 | ||
Rohere a dit : Dzięki ale już sam ogarnąłem ;) ------------------------------------------------------------------- Ten program miał przemieszczać powoli gracza, tam gdzie kliknął, Ale nic się nie dzieje. Co jest źle? Skrypt jeszcze nie dokończony Objaśnienia tablic: X - oś X Y - oś Y XM - Gdzie na osi X kliknięto myszką YM - Gdzie na osi Y kliknięto myszką P - Pozwolenie na przemieszczanie X={} Y={} XM={} YM={} P={} function eventNewPlayer(nick) system.bindMouse(nick, true) end for nick in pairs(tfm.get.room.playerList) do system.bindMouse(nick, true) end function Loop() for nick in pairs(tfm.get.room.playerList) do X[nick]=pairs(tfm.get.room.playerList[nick].x) Y[nick]=pairs(tfm.get.room.playerList[nick].y) if P[nick]==1 then if X[nick]==XM[nick] and Y[nick]==YM[nick] then P=0 elseif X[nick]-XM[nick]>0 then tfm.exec.movePlayer(nick, X[nick]-10, Y, true) elseif X[nick]-XM[nick]<0 then tfm.exec.movePlayer(nick, X[nick]+10, Y, true) end end end end function eventMouse(nick, x, y) XM[nick]=x YM[nick]=y P[nick]=1 end ----------------------------------------------------- dobra jak zawsze pomyliłem się w nazwie xd dla tych co nie wiedzą powinno być zamiast Loop() to eventLoop() Dernière modification le 1467639600000 |
![]() ![]() « Citoyen » 1467638940000
| 0 | ||
/Delete Dernière modification le 1467639000000 |
![]() ![]() « Consul » 1467640200000
| 0 | ||
Fpekal a dit : X={} Y={} XM={} YM={} P={} function eventNewPlayer(nick) system.bindMouse(nick, true) end for nick in pairs(tfm.get.room.playerList) do eventNewPlayer(nick) end function eventLoop() for nick in pairs(tfm.get.room.playerList) do X[nick]=tfm.get.room.playerList[nick].x Y[nick]=tfm.get.room.playerList[nick].y if P[nick]==1 then if X[nick]==XM[nick] and Y[nick]==YM[nick] then P[nick]=0 elseif X[nick]>XM[nick] then tfm.exec.movePlayer(nick, X[nick]-10, Y[nick], false) elseif X[nick]<XM[nick] then tfm.exec.movePlayer(nick, X[nick]+10, Y[nick], false) end end end end function eventMouse(nick, x, y) XM[nick]=x YM[nick]=y P[nick]=1 end Powinno działać |
![]() ![]() « Citoyen » 1467745500000
| 0 | ||
Da się jakoś wyłączyć szamana skryptem? Dernière modification le 1467746040000 |
![]() ![]() « Consul » 1467746400000
| 0 | ||
Fpekal a dit : Niestety się nie da :/ Jedynie odświeżając mapkę |
![]() ![]() « Citoyen » 1467747300000
| 0 | ||
A jak wgrać dowolną mapę TYLKO z vanilli? Próbuję i próbuję ale mi nie wychodzi :/ |
![]() ![]() « Citoyen » 1467747660000
| 0 | ||
tfm.exec.newGame("numer mapy z vanilli") np. tfm.exec.newGame("0") |
![]() ![]() « Citoyen » 1467747840000
| 0 | ||
ale w sensie losowo i nie da się tak: Fpekal a dit : wtedy czasami działa a czasami nie |
![]() ![]() « Citoyen » 1467750900000
| 0 | ||
Sprawdzałem i niczym się nie różni --------------------------------------------------- Fpekal a dit : co tu jest źle? tablica jest zadeklarowana i użyta wcześniej wyskakuje błąd: Kompilator a dit : Dernière modification le 1467761100000 |
![]() « Citoyen » 1467785160000
| 0 | ||
Fpekal a dit : Nie chodzi o tabelę, a o to: Fpekal a dit : Pewnie ci się "wtrąciło" podczas pisania.
Ten błąd pojawia się, jeśli nie zamknięty zostanie tekst, funkcja, zmienna, etc. Dernière modification le 1467785280000 |
![]() ![]() « Citoyen » 1467896880000
| 0 | ||
Da się jakoś zrobić pętlę szybszą niż 2Hz? Jest błąd w numeracji klawiszy Z zamień z W Dernière modification le 1468085880000 |
![]() ![]() « Citoyen » 1468164660000
| 0 | ||
Kiriami a dit : powinno chyba być:tfm.exec.giveVampire("Kiriami") lub tfm.exec.setVampire("Kiriami") lub tfm.exec.setVampire(Kiriami) ale nie jestem pewny nie znam siędobrze na lua ale sprawdź to XD |
![]() ![]() « Citoyen » 1468495680000
| 0 | ||
mam bardzo dziwny błąd. nie wiem czy jest on po mojej stronie ale oto on: Fpekal a dit : Pisząc na czacie "!zamknij" a zaraz potem "!otwórz" wyjdzie coś takiego: a dit : a jak wiemy "otwórz" ma 6 liter, a "zamknij" 7. więc dlaczego brakuje po 1 literze? |
![]() ![]() « Consul » 1468496700000
| 0 | ||
Fpekal a dit : Ja bym to zrobił o tak: function eventChatCommand(nick, com) print(com:sub(0)) end A co do tego drugiego to jak zrobisz print(string.len("Otwórz")) wykryje on Ci 7 liter jest to pewnie spowodowane polską literą. Dernière modification le 1468496820000 |
![]() ![]() « Citoyen » 1468496880000
| 0 | ||
sebafrancuz a dit : no ale zrobiłem kod tylko dałem malutki "wyrywek" tam dalej miało być podawanie nicku |
![]() ![]() « Consul » 1468497120000
| 0 | ||
Fpekal a dit : Gdzie "dalej" w tym print'cie? print(com:sub(0).." "..nick) ? |
![]() ![]() « Citoyen » 1468499220000
| 0 | ||
sebafrancuz a dit : if com:sub(0,7)=="zamknij" then zam[com:sub(9)]=1 x[nick]=tfm.get.room.playerList[nick].x y[nick]=tfm.get.room.playerList[nick].y tfm.exec.addPhysicObject(id[nick], x, y, {type=13, width=10, heigh=10, miceCollision=0, foreground=1, color=0x6A7495}) end |
![]() ![]() « Consul » 1468502640000
| 0 | ||
Fpekal a dit : To ty zamykasz tą osobę co wpisze tą komendę, powinieneś wszystkie nick'i zamienić na com:sub(9) ponieważ to jest nick Twojego gracza: if com:sub(0,7)=="zamknij" then zam[com:sub(9)]=1 x[com:sub(9)]=tfm.get.room.playerList[com:sub(9)].x y[com:sub(9)]=tfm.get.room.playerList[com:sub(9)].y tfm.exec.addPhysicObject(id, x, y, {type=13, width=10, heigh=10, miceCollision=0, foreground=1, color=0x6A7495}) id = id + 1 end ID jest dla wszystkich więc bezsensu przypisywać je do jednego gracza. Dernière modification le 1468502700000 |