123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- const style = require('./render/style')
- const template = require('./render/template')
- const Layout = require('./engine').default;
- let __env = GameGlobal.wx || GameGlobal.tt || GameGlobal.swan;
- let sharedCanvas = __env.getSharedCanvas();
- let sharedContext = sharedCanvas.getContext('2d');
- function draw(data) {
- Layout.clear();
- Layout.init(template(data), style);
- Layout.layout(sharedContext);
- }
- function updateViewPort() {
- Layout.updateViewPort({
- x: 0,
- y: 0,
- width: 0,
- height: 0,
- });
- }
- __env.onMessage(data => {
- if (data.type === 'engine') {
- switch (data.event) {
- case 'update':
- //刷新排行榜
- console.log(1111);
- wx.getFriendCloudStorage({
- keyList: ['score'],
- success: (datas) => {
- console.log(datas)
- let rank = [];
- datas.data.forEach(item => {
- rank.push({
- rankScore: Number(item.KVDataList[0].value),
- nickname: item.nickname,
- avatarUrl: item.avatarUrl,
- })
- })
- rank.sort((a, b) => b.rankScore - a.rankScore);
- rank.length = Math.min(rank.length, 5)
- updateViewPort();
- draw({
- data: rank
- });
- }
- })
- break;
- case 'score':
- //更新发分数
- wx.getUserCloudStorage({
- keyList: ['score'],
- success: (kvData) => {
- if (kvData.KVDataList && kvData.KVDataList.length > 0) {
- let level = Number(kvData.KVDataList[0].value)
- if (level < data.level) {
- wx.setUserCloudStorage({
- KVDataList: [{
- key: 'score',
- value: String(data.level)
- }],
- success: () => {
- console.log('设置分数完成' + data.level)
- }
- })
- } else {
- console.log('设置的分数比最高分数低', level, data.level)
- }
- }else{
- wx.setUserCloudStorage({
- KVDataList: [{
- key: 'score',
- value: String(data.level)
- }],
- success: () => {
- console.log('设置分数完成' + data.level)
- }
- })
- }
- }
- })
- break;
- default:
- break;
- }
- }
- });
|