Mohon maaf sebelumnya kalo penjelasan saya berikut kurang bisa dicerna soalnya 
udah larut pagi, ditambah lagi hidung mamped. Klo ada kesalahan tolong 
dibetulin.

Untuk masalah tembak menembak pake ruby dan ajax, project jadinya udah ada 
disini : 

http://www.koders.com/info.aspx?c=ProjectInfo&pid=CCQV8EXG7T3QQKTWBN45N16AVF

cuma disitu tembak menembak bintang/meteor, data yang ditembak bukan dari 
database tapi object2 yang dicipatakan oleh javascript dan disimpan dalam 
bentuk array. Dan hasil yang ditembak disimpan ke dalam database berdasarkan 
session usernya.(kodenya saya ambil langsung dari script yang ada di website 
itu), mari kita bahas sesuai dengan permasalahan kamu :

CATATAN KODE BERIKUT BELUM SAYA RUNNING, JADI KALO ERROR HARAP DIPERBAIKI.

1. Kamu harus install pluginnya dulu atau gem tambahan : 
http://rubyforge.org/frs/download.php/29794/shooting_star-3.2.6.gem

2. Discript ini meteor/bintangnya bukan data yang disimpan didalam database 
tapi data2 yang diciptakan dari javascript, tabel Meteor disini menyimpan 
object2 yang sudah ditembak oleh user sampai waktunya habis (kamu bisa lihat 
pada Model Meteornya):  

# METEOR_CONTROLLER.RB
class MeteorController < ApplicationController
  layout nil  #<-- bisa kamu ganti pake layout kamu

  def strike
    @channel = params[:channel].split('/').map{|i| CGI.escape(i)}.join('/')
    if params[:event].blank?
      meteor = Meteor.find(params[:id])  # <-- sepertinya ini menempatkan pada 
object/bintang/meteor yang akan ditembak.
      @javascript = meteor.javascript
    else
      @javascript = %Q[setTimeout(function(){
        [EMAIL PROTECTED](#{params.to_json});}, 0);]
    end
    Meteor.shooter.executed(params[:sig], params[:id]) #<<-- menunjukan meteor 
siap ditembak, script "shooter" ada di "Model Meteor"
  end
...
end

# METEOR.RB INI MODELNYA

class Meteor < ActiveRecord::Base
  def self.shooter
    @@shooter ||= DRbObject.new_with_uri(
      configurations[RAILS_ENV]['shooting_star']['shooter'])
  end

  def self.shoot(channel, javascript, tag = [])   
    meteor = Meteor.new(:javascript => javascript)
    returning(meteor.save) do |succeeded|  #<-- stlh def shooter, lsg baca ini
      shooter.shoot(channel, meteor.id, tag) if succeeded  
    end
  end
end


Gimana cara bikin semua data melayang?? Kamu download semua JS yang ada di
  /shooting-star/shooting-star/trunk/public/javascripts
 dan lihat implementasinya pada
  /shooting-star/shooting-star/trunk/app/views/meteor/strike.rhtml


3. Tabel Meteor dalam database di script ini hampir sama fungsinya dengan tabel 
sessions pada shopping cart. Ini yang saya maksud menyimpan apa yang ditembak 
user disimpan sementara kedalam session.


Klo saya lihat sepertinya disini 80%-90% yang kamu perlukan sudah terjawab, 
tinggal kamu kembangkan saja. klo kamu mo ganti meteornya dengan data2 kamu 
yang udah kamu simpan didatabase artinya tabel meteornya dibiarkan saja, hanya 
saja object2 pembentuk bintangnya atau object pembentuk meteor yang melayang2 
itu kamu ganti dengan memanggil data2 kamu dari database sisanya scriptnya 
sama. 

Saya kurang menangkap data yang kamu maksud tentang data yang ditembak user 
kemudian disimpan lagi, itu maksudnya scorenya atau apa yang sudah user tembak 
dikumpulkan dan disimpan kedalam tabel berdasarkan usernya. Gitu? Klo pake 
score berarti kamu tinggal bikin method yang bisa mengkalkulasikan hasil data 
yang ditembak, kalo hanya mengumpulkan data yang udah ditembak terserah kamu mo 
pake tabel Meteor atau tabel tambahan seperti tabel "hasil" misalnya yang 
isinya user_id dan data_tembak, start_time dan end_time.

ini migration dari script Meteor nya :

class CreateMeteors < ActiveRecord::Migration
  def self.up
    create_table :meteors do |t|
      t.column :javascript, :text  #<<-- menyimpan apa yang sudah ditembak
      t.column :limit, :integer
      t.column :created_at, :datetime
    end
  end

  def self.down
    drop_table :meteors
  end
end

Aduh kepala saya jadi pusing hehehe.... terus terang menarik dan bisa dijadikan 
bahan scripsi sebenarnya. Kamu kuliah dimana, semester berapa? Dosen kamu siapa 
namanya?

FX[Riand]

       
---------------------------------
Looking for last minute shopping deals?  Find them fast with Yahoo! Search.

[Non-text portions of this message have been removed]

Kirim email ke