Amuggi
18.05.2013, 20:55
Hallo an alle,
einige werden sich vlt daran erinnern, dass ich derzeit an einem Onlinespiel arbeite. Dieses setzt auf die Telam Ludus Engine.
Nun habe ich ein Problem: Ich möchte per Script einen Switch aktivieren, der dann für alle Spieler auf Aktiv sitzt.
Serverseitig wird dafür dieser Scriptausschnitt verwendet:
def update_switches(id, value)
begin
@switches[id.to_i] = value.to_i
to = ($data_system.switches[id.to_i] =~ /global/i ? 0 : @player_id)
check = @sql.query("SELECT * FROM Switches WHERE Character_id = '#{to}' AND id = '#{id}'").num_rows
if check <= 0
@sql.query("INSERT INTO Switches VALUES('#{to}', '#{id}', '#{value}')")
else
@sql.query("UPDATE Switches SET Value = '#{value}' WHERE Character_id = '#{to}' AND id = '#{id}'")
end
send_to_all("<update_global_triggers>0;#{id};#{value}</update_global_triggers>\n", false, false) if to <= 0
rescue Exception => e
Logs.write("#{e.inspect}\r\n", "Client")
#puts e.inspect, e.backtrace
end
end
Der Befehl muss per Script ausgeführt werden und muss folgende Inhalte aufweisen:
to: ID des Spielers ( * für alle Spieler)
id: Switch ID
value: Switch On/Off durch 1/0
Der Befehl müsst also etwa so aussehen: $game.switches_global[*,54,1] (funktioniert aber nicht)
Daher brauche ich Hilfe.
einige werden sich vlt daran erinnern, dass ich derzeit an einem Onlinespiel arbeite. Dieses setzt auf die Telam Ludus Engine.
Nun habe ich ein Problem: Ich möchte per Script einen Switch aktivieren, der dann für alle Spieler auf Aktiv sitzt.
Serverseitig wird dafür dieser Scriptausschnitt verwendet:
def update_switches(id, value)
begin
@switches[id.to_i] = value.to_i
to = ($data_system.switches[id.to_i] =~ /global/i ? 0 : @player_id)
check = @sql.query("SELECT * FROM Switches WHERE Character_id = '#{to}' AND id = '#{id}'").num_rows
if check <= 0
@sql.query("INSERT INTO Switches VALUES('#{to}', '#{id}', '#{value}')")
else
@sql.query("UPDATE Switches SET Value = '#{value}' WHERE Character_id = '#{to}' AND id = '#{id}'")
end
send_to_all("<update_global_triggers>0;#{id};#{value}</update_global_triggers>\n", false, false) if to <= 0
rescue Exception => e
Logs.write("#{e.inspect}\r\n", "Client")
#puts e.inspect, e.backtrace
end
end
Der Befehl muss per Script ausgeführt werden und muss folgende Inhalte aufweisen:
to: ID des Spielers ( * für alle Spieler)
id: Switch ID
value: Switch On/Off durch 1/0
Der Befehl müsst also etwa so aussehen: $game.switches_global[*,54,1] (funktioniert aber nicht)
Daher brauche ich Hilfe.