Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
mycard
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xiaoye
mycard
Commits
2937f290
Commit
2937f290
authored
Apr 02, 2014
by
神楽坂玲奈
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
0.0.8
parent
ed96da3d
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
89 additions
and
13 deletions
+89
-13
app/apps.json
app/apps.json
+21
-2
app/candy/candy.fix.js
app/candy/candy.fix.js
+18
-2
app/candy/index.html
app/candy/index.html
+11
-0
app/index.html
app/index.html
+2
-2
app/js/controllers.coffee
app/js/controllers.coffee
+20
-3
app/js/controllers.js
app/js/controllers.js
+16
-3
app/js/controllers.map
app/js/controllers.map
+1
-1
No files found.
app/apps.json
View file @
2937f290
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
"port"
:
10800
"port"
:
10800
},
},
"main"
:
"th135.exe"
,
"main"
:
"th135.exe"
,
"summary"
:
"
喵喵喵喵喵帕斯
\n
nyanpass nyanpass
"
,
"summary"
:
"
使用说明:
\n
- 点 [添加] 选择自己游戏路径
\n
- 点 [开始] 运行游戏,并在10800端口建主
\n
- 点 [反重力场] 获取公网IP和端口
\n
- 把那个通过QQ等即时通讯工具告诉你的对手
"
,
"download"
:
{
"download"
:
{
"url"
:
"http://test2.my-card.in/downloads/maotama/th135_1.33.7z"
,
"url"
:
"http://test2.my-card.in/downloads/maotama/th135_1.33.7z"
,
"size"
:
313177031
,
"size"
:
313177031
,
...
@@ -37,7 +37,7 @@
...
@@ -37,7 +37,7 @@
"protocol"
:
"udp"
,
"protocol"
:
"udp"
,
"port"
:
10800
"port"
:
10800
},
},
"summary"
:
"
诶嘿★~
"
,
"summary"
:
"
使用说明:
\n
- 点 [添加] 选择自己游戏路径
\n
- 点 [开始] 运行游戏,并在10800端口建主
\n
- 点 [反重力场] 获取公网IP和端口
\n
- 把那个通过QQ等即时通讯工具告诉你的对手
"
,
"download"
:
{
"download"
:
{
"url"
:
"http://test2.my-card.in/downloads/maotama/th123_1.10a.7z"
,
"url"
:
"http://test2.my-card.in/downloads/maotama/th123_1.10a.7z"
,
"size"
:
250272482
,
"size"
:
250272482
,
...
@@ -161,5 +161,24 @@
...
@@ -161,5 +161,24 @@
]
]
}
}
]
]
},
{
"id"
:
"ygopro"
,
"category"
:
"game"
,
"name"
:
"游戏王 YGOPro"
,
"summary"
:
"现在放这只是摆看的,还没支持。
\n
**不要**在这里尝试安装,会崩。
\n
想玩的请去下萌卡 https://my-card.in/ "
},
{
"id"
:
"thbh"
,
"category"
:
"game"
,
"name"
:
"东方暴打油库里"
,
"summary"
:
"大家好我们是学了十二年3D技术的MyACG制作组,我们制作了最近大热的《东方project》同人游戏,希望大家能够喜欢,多多交流经验。"
,
"download"
:
{
"url"
:
"http://test2.my-card.in/downloads/maotama/thbh.7z"
,
"size"
:
17548549
,
"checksum"
:
"6364783f2a50d36f01355727a343f184"
},
"main"
:
"THBH.exe"
,
"languages"
:
[
"zh-CN"
]
}
}
]
]
\ No newline at end of file
app/candy/candy.fix.js
View file @
2937f290
...
@@ -202,7 +202,7 @@
...
@@ -202,7 +202,7 @@
})(
Candy
.
Core
.
Event
||
{},
Strophe
,
jQuery
);
})(
Candy
.
Core
.
Event
||
{},
Strophe
,
jQuery
);
//父窗口焦點
//父窗口焦點
Candy
.
View
=
function
(
self
,
$
)
{
(
function
(
self
,
$
)
{
/** PrivateObject: _current
/** PrivateObject: _current
* Object containing current container & roomJid which the client sees.
* Object containing current container & roomJid which the client sees.
*/
*/
...
@@ -335,7 +335,23 @@ Candy.View = function(self, $) {
...
@@ -335,7 +335,23 @@ Candy.View = function(self, $) {
return
_options
;
return
_options
;
};
};
return
self
;
return
self
;
}(
Candy
.
View
||
{},
jQuery
);
})(
Candy
.
View
||
{},
jQuery
);
//presence 接受多个el参数
(
function
(
self
,
Strophe
,
$
)
{
/** Class: Candy.Core.Action.Jabber
* Jabber actions
*/
self
.
Jabber
.
Presence
=
function
(
attr
,
el
)
{
var
pres
=
$pres
(
attr
).
c
(
"
priority
"
).
t
(
Candy
.
Core
.
getOptions
().
presencePriority
.
toString
()).
up
().
c
(
"
c
"
,
Candy
.
Core
.
getConnection
().
caps
.
generateCapsAttrs
()).
up
();
for
(
var
i
=
1
;
i
<
arguments
.
length
;
i
++
){
el
=
arguments
[
i
];
pres
.
node
.
appendChild
(
el
.
node
);
}
Candy
.
Core
.
getConnection
().
send
(
pres
.
tree
());
}
})(
Candy
.
Core
.
Action
||
{},
Strophe
,
jQuery
);
//中文验证,看起来SHA1、MD5、PLAIN都对中文支持有问题。通过更换base64库可以修复PLAIN,然后在这里只允许PLAIN认证
//中文验证,看起来SHA1、MD5、PLAIN都对中文支持有问题。通过更换base64库可以修复PLAIN,然后在这里只允许PLAIN认证
Strophe
.
Connection
.
prototype
.
_connect_cb
=
function
(
req
,
_callback
,
raw
)
{
Strophe
.
Connection
.
prototype
.
_connect_cb
=
function
(
req
,
_callback
,
raw
)
{
...
...
app/candy/index.html
View file @
2937f290
...
@@ -107,6 +107,17 @@ $(document).ready(function () {
...
@@ -107,6 +107,17 @@ $(document).ready(function () {
window
.
addEventListener
(
'
message
'
,
function
(
event
)
{
window
.
addEventListener
(
'
message
'
,
function
(
event
)
{
var
msg
=
event
.
data
var
msg
=
event
.
data
switch
(
msg
.
type
)
{
switch
(
msg
.
type
)
{
case
'
status
'
:
if
(
msg
.
status
&&
msg
.
show
){
Candy
.
Core
.
Action
.
Jabber
.
Presence
(
null
,
$build
(
'
show
'
).
t
(
msg
.
show
),
$build
(
'
status
'
).
t
(
msg
.
status
));
}
else
if
(
msg
.
status
){
Candy
.
Core
.
Action
.
Jabber
.
Presence
(
null
,
$build
(
'
status
'
).
t
(
msg
.
status
));
}
else
if
(
msg
.
show
){
Candy
.
Core
.
Action
.
Jabber
.
Presence
(
null
,
$build
(
'
show
'
).
t
(
msg
.
show
));
}
else
{
Candy
.
Core
.
Action
.
Jabber
.
Presence
();
}
break
;
case
'
chat
'
:
case
'
chat
'
:
Candy
.
View
.
Pane
.
PrivateRoom
.
open
(
msg
.
jid
,
msg
.
jid
.
split
(
'
@
'
)[
0
],
true
,
true
);
Candy
.
View
.
Pane
.
PrivateRoom
.
open
(
msg
.
jid
,
msg
.
jid
.
split
(
'
@
'
)[
0
],
true
,
true
);
break
;
break
;
...
...
app/index.html
View file @
2937f290
...
@@ -35,7 +35,7 @@
...
@@ -35,7 +35,7 @@
</div>
</div>
<div
class=
"navbar-collapse collapse"
>
<div
class=
"navbar-collapse collapse"
>
<ul
class=
"nav navbar-nav navbar-left"
ng-if=
"current_user"
>
<ul
class=
"nav navbar-nav navbar-left"
ng-if=
"current_user"
>
<li><a
href=
"javascript:;"
>
首页
</a></li>
<li
class=
"disabled"
><a
href=
"javascript:;"
>
首页
</a></li>
<li
class=
"active"
><a
href=
"javascript:;"
>
游戏
</a></li>
<li
class=
"active"
><a
href=
"javascript:;"
>
游戏
</a></li>
<li
class=
"disabled"
><a
href=
"javascript:;"
>
漫画
</a></li>
<li
class=
"disabled"
><a
href=
"javascript:;"
>
漫画
</a></li>
<li
class=
"disabled"
><a
href=
"javascript:;"
>
音乐
</a></li>
<li
class=
"disabled"
><a
href=
"javascript:;"
>
音乐
</a></li>
...
@@ -87,7 +87,7 @@
...
@@ -87,7 +87,7 @@
<span
class=
"glyphicon glyphicon-search"
></span>
<span
class=
"glyphicon glyphicon-search"
></span>
</button>
</button>
</span>
</span>
<input
id=
"roster_search"
type=
"text"
name=
"name"
class=
"form-control"
>
<input
id=
"roster_search"
type=
"text"
name=
"name"
class=
"form-control"
placeholder=
"好友系统还没写好"
>
</div>
</div>
</form>
</form>
</div>
</div>
...
...
app/js/controllers.coffee
View file @
2937f290
...
@@ -42,8 +42,9 @@ angular.module('maotama.controllers', [])
...
@@ -42,8 +42,9 @@ angular.module('maotama.controllers', [])
if
app
.
category
==
category
if
app
.
category
==
category
"active"
"active"
]
]
.
controller
'AppsShowController'
,
[
'$scope'
,
'$routeParams'
,
(
$scope
,
$routeParams
)
->
.
controller
'AppsShowController'
,
[
'$scope'
,
'$routeParams'
,
'$rootScope'
,
(
$scope
,
$routeParams
,
$rootScope
)
->
$scope
.
tunnel_servers
=
require
'./tunnel_servers.json'
$scope
.
tunnel_servers
=
require
'./tunnel_servers.json'
$scope
.
candy
=
document
.
getElementById
(
'candy'
)
db
.
apps
.
findOne
{
id
:
$routeParams
.
app_id
},
(
err
,
doc
)
->
db
.
apps
.
findOne
{
id
:
$routeParams
.
app_id
},
(
err
,
doc
)
->
throw
err
if
err
throw
err
if
err
$scope
.
app
=
doc
$scope
.
app
=
doc
...
@@ -160,7 +161,19 @@ angular.module('maotama.controllers', [])
...
@@ -160,7 +161,19 @@ angular.module('maotama.controllers', [])
$scope
.
run
=
()
->
$scope
.
run
=
()
->
$scope
.
runtime
.
running
=
true
$scope
.
runtime
.
running
=
true
game
=
child_process
.
spawn
$scope
.
app
.
main
,
[],
$scope
.
candy
.
contentWindow
.
postMessage
(
type
:
'status'
,
status
:
"正在玩
#{
$scope
.
app
.
name
}
"
,
show
:
"dnd"
,
$scope
.
candy
.
src
)
game
=
child_process
.
spawn
$scope
.
app
.
main
,
[
"--maotama-username=
#{
$rootScope
.
current_user
.
name
}
"
,
"--maotama-ranking-0=0"
,
"--maotama-ranking-1=1"
,
"--maotama-ranking-2=2"
,
"--maotama-ranking-3=3"
,
"--maotama-ranking-4=4"
,
"--maotama-ranking-5=5"
,
"--maotama-ranking-6=6"
,
"--maotama-ranking-7=7"
,
"--maotama-ranking-8=8"
,
"--maotama-ranking-HJ=9"
,
],
cwd
:
$scope
.
local
.
installation
cwd
:
$scope
.
local
.
installation
game
.
stdout
.
setEncoding
(
'utf8'
);
game
.
stdout
.
setEncoding
(
'utf8'
);
game
.
stdout
.
on
'data'
,
(
data
)
->
game
.
stdout
.
on
'data'
,
(
data
)
->
...
@@ -185,10 +198,15 @@ angular.module('maotama.controllers', [])
...
@@ -185,10 +198,15 @@ angular.module('maotama.controllers', [])
},
$scope
.
profile
,
(
err
,
numReplaced
,
newDoc
)
->
},
$scope
.
profile
,
(
err
,
numReplaced
,
newDoc
)
->
throw
err
if
err
throw
err
if
err
$scope
.
$digest
();
$scope
.
$digest
();
when
'SCORE'
score
=
parseInt
$
(
command
).
text
()
window
.
LOCAL_NW
.
desktopNotifications
.
notify
$scope
.
app
.
icon
,
"得分"
,
score
else
else
window
.
LOCAL_NW
.
desktopNotifications
.
notify
$scope
.
app
.
icon
,
"unknown command"
,
matches
[
1
]
window
.
LOCAL_NW
.
desktopNotifications
.
notify
$scope
.
app
.
icon
,
"unknown command"
,
matches
[
1
]
game
.
on
'close'
,
(
code
)
->
game
.
on
'close'
,
(
code
)
->
$scope
.
runtime
.
running
=
false
$scope
.
runtime
.
running
=
false
$scope
.
candy
.
contentWindow
.
postMessage
(
type
:
'status'
,
$scope
.
candy
.
src
)
$scope
.
$digest
();
$scope
.
$digest
();
$scope
.
achievement_unlocked_count
=
(
category
)
->
$scope
.
achievement_unlocked_count
=
(
category
)
->
...
@@ -220,7 +238,6 @@ angular.module('maotama.controllers', [])
...
@@ -220,7 +238,6 @@ angular.module('maotama.controllers', [])
$scope
.
runtime
.
tunnel
=
address
$scope
.
runtime
.
tunnel
=
address
$scope
.
$digest
()
$scope
.
$digest
()
]
]
.
controller
'UserController'
,
[
'$scope'
,
'$rootScope'
,
'$http'
,
(
$scope
,
$rootScope
,
$http
)
->
.
controller
'UserController'
,
[
'$scope'
,
'$rootScope'
,
'$http'
,
(
$scope
,
$rootScope
,
$http
)
->
...
...
app/js/controllers.js
View file @
2937f290
...
@@ -88,8 +88,9 @@
...
@@ -88,8 +88,9 @@
};
};
}
}
]).
controller
(
'
AppsShowController
'
,
[
]).
controller
(
'
AppsShowController
'
,
[
'
$scope
'
,
'
$routeParams
'
,
function
(
$scope
,
$routeParams
)
{
'
$scope
'
,
'
$routeParams
'
,
'
$rootScope
'
,
function
(
$scope
,
$routeParams
,
$rootScope
)
{
$scope
.
tunnel_servers
=
require
(
'
./tunnel_servers.json
'
);
$scope
.
tunnel_servers
=
require
(
'
./tunnel_servers.json
'
);
$scope
.
candy
=
document
.
getElementById
(
'
candy
'
);
db
.
apps
.
findOne
({
db
.
apps
.
findOne
({
id
:
$routeParams
.
app_id
id
:
$routeParams
.
app_id
},
function
(
err
,
doc
)
{
},
function
(
err
,
doc
)
{
...
@@ -257,12 +258,17 @@
...
@@ -257,12 +258,17 @@
$scope
.
run
=
function
()
{
$scope
.
run
=
function
()
{
var
game
;
var
game
;
$scope
.
runtime
.
running
=
true
;
$scope
.
runtime
.
running
=
true
;
game
=
child_process
.
spawn
(
$scope
.
app
.
main
,
[],
{
$scope
.
candy
.
contentWindow
.
postMessage
({
type
:
'
status
'
,
status
:
"
正在玩
"
+
$scope
.
app
.
name
,
show
:
"
dnd
"
},
$scope
.
candy
.
src
);
game
=
child_process
.
spawn
(
$scope
.
app
.
main
,
[
"
--maotama-username=
"
+
$rootScope
.
current_user
.
name
,
"
--maotama-ranking-0=0
"
,
"
--maotama-ranking-1=1
"
,
"
--maotama-ranking-2=2
"
,
"
--maotama-ranking-3=3
"
,
"
--maotama-ranking-4=4
"
,
"
--maotama-ranking-5=5
"
,
"
--maotama-ranking-6=6
"
,
"
--maotama-ranking-7=7
"
,
"
--maotama-ranking-8=8
"
,
"
--maotama-ranking-HJ=9
"
],
{
cwd
:
$scope
.
local
.
installation
cwd
:
$scope
.
local
.
installation
});
});
game
.
stdout
.
setEncoding
(
'
utf8
'
);
game
.
stdout
.
setEncoding
(
'
utf8
'
);
game
.
stdout
.
on
(
'
data
'
,
function
(
data
)
{
game
.
stdout
.
on
(
'
data
'
,
function
(
data
)
{
var
achievement
,
achievement_item
,
command
,
matches
,
_base
,
_i
,
_len
,
_name
,
_ref
;
var
achievement
,
achievement_item
,
command
,
matches
,
score
,
_base
,
_i
,
_len
,
_name
,
_ref
;
console
.
log
(
data
);
console
.
log
(
data
);
if
(
matches
=
data
.
match
(
/<maotama>
(
.+
)
<
\/
maotama>/
))
{
if
(
matches
=
data
.
match
(
/<maotama>
(
.+
)
<
\/
maotama>/
))
{
_ref
=
$
(
matches
[
1
]);
_ref
=
$
(
matches
[
1
]);
...
@@ -293,6 +299,10 @@
...
@@ -293,6 +299,10 @@
return
$scope
.
$digest
();
return
$scope
.
$digest
();
});
});
break
;
break
;
case
'
SCORE
'
:
score
=
parseInt
(
$
(
command
).
text
());
window
.
LOCAL_NW
.
desktopNotifications
.
notify
(
$scope
.
app
.
icon
,
"
得分
"
,
score
);
break
;
default
:
default
:
window
.
LOCAL_NW
.
desktopNotifications
.
notify
(
$scope
.
app
.
icon
,
"
unknown command
"
,
matches
[
1
]);
window
.
LOCAL_NW
.
desktopNotifications
.
notify
(
$scope
.
app
.
icon
,
"
unknown command
"
,
matches
[
1
]);
}
}
...
@@ -301,6 +311,9 @@
...
@@ -301,6 +311,9 @@
});
});
return
game
.
on
(
'
close
'
,
function
(
code
)
{
return
game
.
on
(
'
close
'
,
function
(
code
)
{
$scope
.
runtime
.
running
=
false
;
$scope
.
runtime
.
running
=
false
;
$scope
.
candy
.
contentWindow
.
postMessage
({
type
:
'
status
'
},
$scope
.
candy
.
src
);
return
$scope
.
$digest
();
return
$scope
.
$digest
();
});
});
};
};
...
...
app/js/controllers.map
View file @
2937f290
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment