2019年9月14日 星期六

Scratch3.0 檔案於網頁上播放

一開始找到的教學文章

https://blog.csdn.net/qq_36268036/article/details/84262540


大意是用canvas播放scratch文件

以文章內提供的程式碼,可以做出這樣的播放器

http://163.26.79.1/homework/scratch.php?id=137

不過這樣的播放器,並沒有完整的播放功能

鍵盤事件、滑鼠事件在這個播放器中,完全無法實現



因此後面觀察了文章中提供的網易卡達的作法

網易卡達:https://kada.163.com/project/1457681-1961218.htm

觀察了他使用的程式碼後加以修改


最終的完成品,可以正常播放 Sctatch3.0 的sb3檔

且向下相容 Sctatch2.0 的 sb2 檔

http://163.26.79.1/homework/scratch_v2.php?id=137

http://163.26.79.1/homework/scratch_v2.php?id=123



# JS之下無秘密,有需要的請自行看網頁原始碼下載

# 中國那邊的碼農奇才真的很多

# 每次改版最討厭的就是播放器和瀏覽器不相容的問題,希望這次能用久一點

9 則留言:

  1. 你好,我在新北市任教,我有參考你的做法,做出sb3的播放器,但是無法進行滑鼠鍵盤控制,我對js不熟,看了網頁原始碼,改了之後只有外框,但是讀取不到sb3,能否請你提供相關程式呢?謝謝
    如果方便請來信
    eemdy874046@gmail.com

    中信國小黃老師

    回覆刪除
    回覆
    1. 在gui-player.min.js這個檔案下搜尋 163.26.79.1 把所有的網址改成你的網址
      否則會讀取不到你的檔案

      刪除
    2. 我有做了這部份,還是沒有出來。可否指點迷津,謝謝您。

      刪除
  2. 您好:

    請教您,"CloudPlayer":"/res/swf/CloudPlayer.swf"這些檔案是放在自己的 server上嗎?

    回覆刪除
  3. 您好:
    我依您的程式試著複製,但還是有問題,可以幫我看看嗎?謝謝您。
    http://163.30.44.17/works/scratch3.php

    回覆刪除
    回覆
    1. 時間有點久遠,我有點忘記我當初修改的一些小細節了QQ
      我提供我Scratch_v2.php的原始碼,您參考看看
      https://drive.google.com/file/d/1EVzS0-nZ7EL0iL9uyVZ90zgXlaxaWGFj/view?usp=sharing
      不過我用chrome的開發者模式下去讀取您的網頁
      比我的網頁多出了三個錯誤訊息
      或許可以從這地方著手

      刪除
    2. 其實可以把程式轉成html,這樣一來問題就簡化成如何在網頁嵌入html(實測任何事件可用,效果可以參考我寫的這個scratch遊戲:https://sites.google.com/view/soulayer)

      刪除